signal_cpualarm: insert memory barrier before pthread_kill()

pthread_kill() does not act as a memory barrier so we need to call
std::thread_fence_{acquire,release}() to ensure the changes are seen
through the cross-thread signal.