In the event that Terminate is called multiple times on a ThreadPool before all tasks have been completed, Signal will only wake one of them and the extras will wait forever. It may be a misuse of the API to call Terminate multiple times but Broadcast will prevent this behavior.
In the event that Terminate is called multiple times on a ThreadPool before all tasks have been completed, Signal will only wake one of them and the extras will wait forever. It may be a misuse of the API to call Terminate multiple times but Broadcast will prevent this behavior.