From: Fukumoto Atsushi Date: 2003-03-17T22:07:13+09:00 Subject: [ruby-dev:19830] lib/tracer.rb and Thread.critical Thread.critical を使うスクリプトを Tracer でトレースすると予期しない動 作になります。以下のように変更すると正しくなるようです。 福本 淳 fukumoto@imasy.or.jp Index: tracer.rb =================================================================== RCS file: /src/ruby/lib/tracer.rb,v retrieving revision 1.12 diff -u -r1.12 tracer.rb --- tracer.rb 7 Nov 2002 19:18:14 -0000 1.12 +++ tracer.rb 17 Mar 2003 13:01:33 -0000 @@ -119,6 +119,7 @@ return unless p.call event, file, line, id, binding, klass end + saved_crit = Thread.critical Thread.critical = true stdout.printf("#%d:%s:%d:%s:%s: %s", get_thread_no, @@ -127,7 +128,7 @@ klass || '', EVENT_SYMBOL[event], get_line(file, line)) - Thread.critical = false + Thread.critical = saved_crit end Single = new