threadpool example generalized, works with thread_safe_signals. simple distributed example accounts for spurious wake-ups