Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Correctly shutdown all scheduler threads (#4549)
Prior to this change, it was possible to not shutdown all scheduler threads. ponyint_thread_join on non-Windows systems calls pthread_join. pthread_join can fail and that failure needs to be handled. In our case here, given that ponyint_thread_join returns a boolean, the response to an error is to try again. If we encounter a non-recoverable error, this new strategy should result in a hang rather than undefined behavior. If we have hangs that we trace to this changed functionality, we look at more robust error handling and changing the interface from ponyint_thread_join.
- Loading branch information