Project

General

Profile

Bug #7460

メインスレッド終了後のサブスレッド終了待ち処理においてデッドロック検知が動作していない

Added by kosaki (Motohiro KOSAKI) over 6 years ago. Updated 16 days ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
ruby-trunk
[ruby-core:50281]

Description

[Bug #5368] からの派生なんですが、

Thread.new do
begin
p "sleep1"
sleep
p "sleep2"
ensure
p "stop1"
Thread.stop
p "stop2"
end
end

このスクリプトでデッドロック検知が動かないのはおかしいと思います。
要するに thread_terminate_all() でも vm->sleeperを増やせ、ということなのですが TAG_FATALの考慮漏れが複数箇所に
とっちらかってて、パッチはちょっときたない(添付参照)。くすん


Files

terminate_all-deadlock-check.patch (2.59 KB) terminate_all-deadlock-check.patch kosaki (Motohiro KOSAKI), 11/29/2012 10:02 AM

Related issues

Related to Ruby master - Bug #5368: ensure節でsleepするようなThreadがあるとインタプリタが終了しないClosedActions

History

Updated by kosaki (Motohiro KOSAKI) over 6 years ago

  • Status changed from Open to Assigned
  • Assignee set to kosaki (Motohiro KOSAKI)

Updated by kosaki (Motohiro KOSAKI) over 6 years ago

  • Category set to core
  • Target version set to 2.6
#3

Updated by naruse (Yui NARUSE) over 1 year ago

  • Target version deleted (2.6)
#4

Updated by jeremyevans0 (Jeremy Evans) 16 days ago

  • Status changed from Assigned to Closed

Also available in: Atom PDF