Does a call to interrupt_all blocks the calling thread, waiting for all threads to be interrupted? Or is it supposed to return immediately and let the threads hit their interruption points later?

I have a thread_group and I want to call interrupt_all to stop all threads in the group from 'within' one of the threads in that group. This would be possible only if interrupt_all in not blocking, otherwise I will need to somehow signal some other thread to do the interrupt_all on that group.

SG