playground/threads.rb in pry-moves-0.1.4 vs playground/threads.rb in pry-moves-0.1.5
- old
+ new
@@ -1,26 +1,29 @@
require 'pry-moves'
Thread.current[:name] = 'main'
-a = Thread.new do
- Thread.current[:name] = 'a'
- sleep 0.2
- puts 'a'
+
+def inside_thread
binding.pry
- puts 'aaaa'
- sleep 1
puts 'aaa'
end
-b = Thread.new do
- Thread.current[:name] = 'b'
- 20223000.times do
- 432 * 3232
+def aaa
+ pre_callers = binding.callers +
+ (Thread.current[:pre_callers] || [])
+ a = Thread.new do
+ # что можно сделать - записать в текущий тред ссылку на биндинг
+ # предыдущего треда. А если цепочка тредов - то как? Можно прямо там собирать каллеров предыдущего треда... ??
+ Thread.current[:pre_callers] = pre_callers
+
+ Thread.current[:name] = 'a'
+ inside_thread
end
- puts '2'
- binding.pry
- puts '22'
+ a.join
end
-a.join
-b.join
+def bbb
+ aaa
+end
+
+bbb
\ No newline at end of file