diff options
author | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-09-21 17:02:21 +0000 |
---|---|---|
committer | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-09-21 17:02:21 +0000 |
commit | f80896c2192746c3d3c5d6300c6412e69a3e3d7d (patch) | |
tree | cb9a280504c0665637c46110619a4f58ba12d27c /thread_pthread.c | |
parent | bf8826c510adee31805b41df2713df54379c61e9 (diff) | |
download | ruby-f80896c2192746c3d3c5d6300c6412e69a3e3d7d.tar.gz |
* thread_pthread.c (ubf_select): activate timer thread when interrupt
blocking thread.
A patch created by Koichi Sasada. [ruby-core:39634] [Bug #5343]
to cover race condition, timer thread periodically send SIGVTARLM to
threads in signal thread list. so you should activate timer thread
when interrupt a thread.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread_pthread.c')
-rw-r--r-- | thread_pthread.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/thread_pthread.c b/thread_pthread.c index 6d700051a8..afc86ca035 100644 --- a/thread_pthread.c +++ b/thread_pthread.c @@ -1013,6 +1013,7 @@ ubf_select(void *ptr) { rb_thread_t *th = (rb_thread_t *)ptr; add_signal_thread_list(th); + rb_thread_wakeup_timer_thread(); /* activate timer thread */ ubf_select_each(th); } |