Last active
January 2, 2016 09:09
Revisions
-
MSch revised this gist
Jan 6, 2014 . 2 changed files with 12 additions and 147 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,132 +0,0 @@ This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,20 +1,17 @@ module ActiveRecord class Connection def connect Thread.current.thread_variable_set(:connection_id, 123) end end end module Sequel class Connection def connect Thread.current.thread_variable_set(:connection_id, 234) end end end # Both ActiveRecord and Sequel access the same connection_id thread local variable. -
envygeeks created this gist
Jan 6, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,132 @@ Get 0: Get 21: Get 1: Get 12: Get 14: Get 16: Get 17: Get 20: Get 10: Get 5: Get 7: Get 9: Get 11: Get 11: Get 12: Get 15: Get 17: Get 19: Get 13: Get 18: Get 3: Get 12: Get 15: Get 16: Get 18: Get 6: Get 20: Get 8: Get 13: Get 15: Get 17: Get 19: Get 21: Get 11: Get 13: Get 14: Get 16: Get 19: Get 21: Get 21: Get 12: Get 14: Get 17: Get 18: Get 19: Get 13: Get 16: Get 20: Get 19: Get 11: Get 13: Get 14: Get 17: Get 18: Get 20: Get 14: Get 13: Get 21: Get 12: Get 14: Get 16: Get 18: Get 20: Get 19: Get 11: Get 13: Get 15: Get 17: Get 19: Get 14: Get 18: Get 11: Get 15: Get 18: Get 12: Get 11: Get 16: Get 21: Get 14: Get 20: Get 16: Get 19: Get 15: Get 17: Get 21: Get 15: Get 17: Get 21: Get 16: Get 20: Get 16: Get 2: Get 15: Get 20: Get 15: Get 11: Get 21: Get 13: Get 19: Get 12: Get 20: Get 12: Get 12: Get 13: Get 16: Get 18: Get 20: Get 21: Get 18: Get 12: Get 14: Get 17: Get 14: Get 17: Get 13: Get 4: Get 18: Get 15: Get 11: Get 11: Get 13: Get 15: Get 17: Get 19: Get 11: Get 21: Get 14: Get 18: Get 19: Get 16: Get 12: Get 20: This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,20 @@ threads = [] 11.times do |i| threads << Thread.new(i) do |v| $stdout.puts "Get #{v}: #{Thread.current.thread_variable_get(:foo)}" Thread.current.thread_variable_set(:foo, "bar#{v}") sub_threads = [] 11.times do |ii| sub_threads << Thread.new(ii + 11) do |vv| $stdout.puts "Get #{vv}: #{Thread.current.thread_variable_get(:foo)}" Thread.current.thread_variable_set(:foo, "bar#{vv}") end end sub_threads.map(&:join) end end threads.map(&:join)