As per How can I tell reliably if a boost thread has exited its run method?, thankfully you can join a finished thread and avoid the race condition that arises if you had to conditionally join a thread only if running.
But what about thread::interrupt()
? Can it be called after the thread exited?