Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
## run_this.rb module BarForTestRequireOnce; end $foo = 0 BarForTestRequireOnce.autoload :Foo, "foo_for_test_autoload_once" 100.times do results = [] (0...10).to_a.map do |x| Thread.new {results[x] = BarForTestRequireOnce::Foo} end.each {|t| t.join} raise "Concurrent autoloads caused double-loading" if results != [1] * 10 $foo = 0 BarForTestRequireOnce.autoload :Foo, "foo_for_test_autoload_once" $".pop end ## foo_for_test_autoload_once.rb sleep 0.05 $foo += 1 BarForTestRequireOnce::Foo = $foo
This paste will be private.
From the Design Piracy series on my blog: