[MacRuby] #904: Can't autoload with MultiThread.

MacRuby ruby-noreply at macosforge.org
Tue Sep 14 07:23:17 PDT 2010


#904: Can't autoload with MultiThread.
----------------------------------+-----------------------------------------
 Reporter:  watson1978@…          |       Owner:  lsansonetti@…        
     Type:  defect                |      Status:  new                  
 Priority:  blocker               |   Milestone:                       
Component:  MacRuby               |    Keywords:                       
----------------------------------+-----------------------------------------
 Test Script:
 {{{
 #!ruby
 #$ cat t1.rb
 FILE = "test-tmp-0001.rb"

 open(FILE, "w") {|f|
   f.puts <<END
 class TEST
   def self.ok
     :ok
   end
 end
 END
 }

 autoload :TEST, "./#{FILE}"
 t1 = Thread.new { TEST.ok }
 t2 = Thread.new { TEST.ok }
 p t1.join.value
 p t2.join.value
 }}}

 Result:
 {{{
 $ /usr/bin/ruby -v t1.rb
 ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
 :ok
 :ok

 $ ruby -v t1.rb
 ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.4.0]
 t1.rb:15: warning: loading in progress, circular require considered
 harmful - /Users/watson/tmp/test-tmp-0001.rb
         from t1.rb:15:in `block in <main>'
 :ok
 :ok

 $ macruby -v t1.rb
 MacRuby 0.7 (ruby 1.9.2) [universal-darwin10.0, x86_64]
 :ok
 /Users/watson/tmp/t1.rb:3:in `<main>': uninitialized constant TEST
 (NameError)
 }}}

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/904>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list