diff --git a/ChangeLog b/ChangeLog index 31f7af99c5..30aecb9757 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Jun 30 02:53:26 2011 KOSAKI Motohiro + + * thread.c (rb_threadptr_execute_interrupts_common): remove + meaningless native_thread_yield(). It never close a race. + Thu Jun 30 02:41:47 2011 KOSAKI Motohiro * thread.c (rb_thread_schedule_limits): minor optimization. diff --git a/thread.c b/thread.c index 0e10768129..13e3e6ecba 100644 --- a/thread.c +++ b/thread.c @@ -1263,10 +1263,6 @@ rb_threadptr_execute_interrupts_common(rb_thread_t *th) { rb_atomic_t interrupt; - if (GET_VM()->main_thread == th) { - while (rb_signal_buff_size() && !th->exec_signal) native_thread_yield(); - } - if (th->raised_flag) return; while ((interrupt = ATOMIC_EXCHANGE(th->interrupt_flag, 0)) != 0) {