Issue #5368 has been updated by kosaki (Motohiro KOSAKI).


> ??ªã?????#1952 ??§ã????§ã?«æ?????????????¦ã?????????????? Ctrl-c ?????¼ã?????????????«ã?µã????¹ã?¬ã????????å¾?????????«ç??äº??????¦ã????¾ã????¨ã?????æ¡????SEGV???å¼????èµ·ã???????®ã??NG???

????????¡ã????£ã?¨ã?¾ã???????«æ?¸ã???¨ã??SEGV???å¼????èµ·ã???????®ã?¯ç??äº???¦ç????§ã?¾ã???????«ï????¤ï????¤ã?ªã?½ã?¼ã?¹è§£??¾å?¦ç??????????¦ã??????????§ã??????????ªã??exit()????????¨ã???????¸æ????¢ã?¯ã??????????????????????????????????¯å?????MVM??«ã???????¨ã????«å?????å¼????èµ·ã????????
SEGV?????ªã??????????«å????????NULL?????§ã????¯ã????¥ã???????¨ã?????æ¡???«ã?¤ã????¦ã?¯ã??pthread_cond_destruct()?????¥ã?¹ã?¬ã??????????ªã?½ã?¼ã?¹ä½¿??¨ä¸­??«å?¼ã?³å?ºã???????????EBUSY??§å¤±????????????????????¾ã?????????ªã??
----------------------------------------
Bug #5368: ensureç¯????sleep???????????????Thread???????????¨ã?¤ã?³ã?¿ã????ªã?¿ã??çµ?äº??????ªã??
https://bugs.ruby-lang.org/issues/5368#change-34052

Author: Glass_saga (Masaki Matsushita)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: core
Target version: 2.0.0
ruby -v: -


=begin
次ã?®ã?³ã?¼ã?????å®?è¡??????????CPU使ç?¨ç?????è·³ã?­ä???????£ã????¶æ????«ã?ªã????¤ã?³ã?¿ã????ªã?¿ã??çµ?äº??????¾ã????????

 Thread.new do
   begin
     sleep
   ensure
     sleep
   end
 end

??¨ã??rb_thread_terminate_all??§ã?¯æ????????1?????????????????¦ã???????¹ã?¬ã???????«å¯¾??????terminate_i???å®?è¡??????¦ã????¾ã????????ensureç¯????sleep???????????????Thread???????????¨ã????????Thread??¯å???????¾ã?¾ã?«ã?ªã?£ã?¦ã????¾ã??while(!rb_thread_alone())?????¡é????«ã?¼ã????«ã?ªã?£ã?¦ã????¾ã????¾ã?????

while(!rb_thread_alone())??®æ?????®ã?«ã?¼ã????§ã?«ã?¬ã?³ã????¹ã?¬ã??????????¡ã?¤ã?³ã?¹ã?¬ã???????§ã????£ã????´å????«ã??????????¦ã???????¹ã?¬ã???????«å¯¾??????terminate_i???å®?è¡????????????????patch?????¸ã???????¨ã?????????????®ã????°ã?¯å???????ªã???ªã????¾ã????????
patch???æ·»ä???????¾ã?????patch??®é?©ç?¨å?????test-all????????¹ã????¾ã?????
=end


-- 
http://bugs.ruby-lang.org/