From: "James M. Lawrence" Date: 2009-02-16T05:11:57+09:00 Subject: [ruby-core:22159] Thread#abort_on_exception behavior Is this difference between 1.8 and 1.9 expected? % cat aoe.rb require 'thread' Thread.abort_on_exception = true Thread.new { sleep(1) throw "exception from thread" } begin sleep rescue => e puts "rescued: #{e.inspect}" end % ruby191 -v aoe.rb ruby 1.9.1p0 (2009-02-13 revision 22266) [i386-darwin9.6.0] rescued: # % ruby19dev -v aoe.rb ruby 1.9.2dev (2009-02-16 trunk 22334) [i386-darwin9.6.0] rescued: # % ruby187 -v aoe.rb ruby 1.8.7 (2009-02-15 patchlevel 118) [i686-darwin9.6.0] aoe.rb:7:in `throw': uncaught throw `exception from thread' in thread 0x804400 (ThreadError) from aoe.rb:7 from aoe.rb:5:in `initialize' from aoe.rb:5:in `new' from aoe.rb:5 % ruby186 -v aoe.rb ruby 1.8.6 (2009-02-15 patchlevel 332) [i686-darwin9.6.0] aoe.rb:7:in `throw': uncaught throw `exception from thread' in thread 0x800600 (ThreadError) from aoe.rb:7 from aoe.rb:5:in `initialize' from aoe.rb:5:in `new' from aoe.rb:5