thread.c (sleep_*): check interrupt before changing th->status
Having threads switch before we sleep can cause applications
to misread the state of the thread. Now, we are consistent
with blocking_region_begin behavior and change th->status
AFTER checking interrupts.
thread.c (sleep_*): check interrupt before changing th->status
Having threads switch before we sleep can cause applications
to misread the state of the thread. Now, we are consistent
with blocking_region_begin behavior and change th->status
AFTER checking interrupts.
Maybe this can fix [Bug #15002]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e