Guest

Untitled

By: a guest on Jan 28th, 2012  |  syntax: None  |  size: 0.34 KB  |  hits: 19  |  expires: Never
download  |  raw  |  embed  |  report abuse
Copied
  1. #!/usr/bin/env ruby
  2.  
  3. require 'thread'
  4.  
  5. def foo
  6.         Thread.new do
  7.                 loop do
  8.                         puts "foo"
  9.                         foo
  10.                 end
  11.         end
  12.         Thread.current.exit
  13. end
  14.  
  15. Thread.list.each{|t| p t}
  16.  
  17. Thread.new{foo}
  18.  
  19. loop do
  20.         Thread.list.each{|t| t.join unless Thread.current.__id__ == t.__id__}
  21.         break if Thread.list.select{|t| t.alive?}.size == 1
  22. end
  23. #runs forever