diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | thread.c | 5 |
2 files changed, 10 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Thu Oct 24 12:23:58 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * thread.c (rb_thread_terminate_all): add a comment why we need + state check and call terminate_i again. + Thu Oct 24 12:15:02 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> * thread.c (rb_thread_terminate_all): add a comment why infinite @@ -449,6 +449,11 @@ rb_thread_terminate_all(void) } TH_POP_TAG(); + /* + * When caught an exception (e.g. Ctrl+C), let's broadcast + * kill request again to ensure killing all threads even + * if they are blocked on sleep, mutex, etc. + */ if (state) { goto retry; } |