ruby-changes:20212
From: nahi <ko1@a...>
Date: Tue, 28 Jun 2011 05:10:09 +0900 (JST)
Subject: [ruby-changes:20212] nahi:r32260 (trunk): * thread.c (rb_thread_local_aref): RDoc fix. Thread#[] example
nahi 2011-06-28 05:09:59 +0900 (Tue, 28 Jun 2011) New Revision: 32260 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=32260 Log: * thread.c (rb_thread_local_aref): RDoc fix. Thread#[] example had a race. See #4480. Modified files: trunk/ChangeLog trunk/thread.c Index: ChangeLog =================================================================== --- ChangeLog (revision 32259) +++ ChangeLog (revision 32260) @@ -1,3 +1,8 @@ +Tue Jun 28 05:03:32 2011 Hiroshi Nakamura <nahi@r...> + + * thread.c (rb_thread_local_aref): RDoc fix. Thread#[] example + had a race. See #4480. + Tue Jun 28 01:22:00 2011 Kenta Murata <mrkn@m...> * ext/bigdecimal/bigdecimal.c (BigMath_s_log): move BigMath.log from Index: thread.c =================================================================== --- thread.c (revision 32259) +++ thread.c (revision 32260) @@ -2067,17 +2067,20 @@ * either a symbol or a string name. If the specified variable does not exist, * returns <code>nil</code>. * - * a = Thread.new { Thread.current["name"] = "A"; Thread.stop } - * b = Thread.new { Thread.current[:name] = "B"; Thread.stop } - * c = Thread.new { Thread.current["name"] = "C"; Thread.stop } - * Thread.list.each {|x| puts "#{x.inspect}: #{x[:name]}" } + * [ + * Thread.new { Thread.current["name"] = "A" }, + * Thread.new { Thread.current[:name] = "B" }, + * Thread.new { Thread.current["name"] = "C" } + * ].each do |th| + * th.join + * puts "#{th.inspect}: #{th[:name]}" + * end * * <em>produces:</em> * - * #<Thread:0x401b3b3c sleep>: C - * #<Thread:0x401b3bc8 sleep>: B - * #<Thread:0x401b3c68 sleep>: A - * #<Thread:0x401bdf4c run>: + * #<Thread:0x00000002a54220 dead>: A + * #<Thread:0x00000002a541a8 dead>: B + * #<Thread:0x00000002a54130 dead>: C */ static VALUE -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/