research/primes-processes.rb in amqp-0.7.0.pre vs research/primes-processes.rb in amqp-0.7.0
- old
+ new
@@ -1,13 +1,15 @@
+# encoding: utf-8
+
$:.unshift File.dirname(__FILE__) + '/../lib'
require 'mq'
MAX = 500
-EM.run{
+EM.run {
- def log *args
+ def log(*args)
p args
end
# MQ.logging = true
@@ -19,21 +21,21 @@
def prime?
('1' * self) !~ /^1?$|^(11+?)\1+$/
end
end
- MQ.queue('prime checker').subscribe{ |info, num|
+ MQ.queue('prime checker').subscribe { |info, num|
log "prime checker #{Process.pid}", :prime?, num
if Integer(num).prime?
MQ.queue(info.reply_to).publish(num, :reply_to => Process.pid)
EM.stop_event_loop if num == (MAX-1).to_s
end
}
elsif ARGV[0] == 'controller'
- MQ.queue('prime collector').subscribe{ |info, prime|
+ MQ.queue('prime collector').subscribe { |info, prime|
log 'prime collector', :received, prime, :from, info.reply_to
(@primes ||= []) << Integer(prime)
}
MAX.times do |i|
@@ -63,73 +65,73 @@
end
}
__END__
-["prime checker", :started, {:pid=>1958}]
-["prime checker", :started, {:pid=>1957}]
-["prime checker", :started, {:pid=>1956}]
-["prime checker", :prime?, "1", {:pid=>1958}]
-["prime checker", :prime?, "2", {:pid=>1957}]
-["prime collector", :received, "2", {:from_pid=>"1957"}]
-["prime checker", :prime?, "3", {:pid=>1956}]
-["prime collector", :received, "3", {:from_pid=>"1956"}]
-["prime checker", :prime?, "4", {:pid=>1958}]
-["prime checker", :prime?, "5", {:pid=>1957}]
-["prime collector", :received, "5", {:from_pid=>"1957"}]
-["prime checker", :prime?, "6", {:pid=>1956}]
-["prime checker", :prime?, "7", {:pid=>1958}]
-["prime collector", :received, "7", {:from_pid=>"1958"}]
-["prime checker", :prime?, "8", {:pid=>1957}]
-["prime checker", :prime?, "9", {:pid=>1956}]
-["prime checker", :prime?, "10", {:pid=>1958}]
-["prime checker", :prime?, "11", {:pid=>1957}]
-["prime collector", :received, "11", {:from_pid=>"1957"}]
-["prime checker", :prime?, "12", {:pid=>1956}]
-["prime checker", :prime?, "13", {:pid=>1958}]
-["prime collector", :received, "13", {:from_pid=>"1958"}]
-["prime checker", :prime?, "14", {:pid=>1957}]
-["prime checker", :prime?, "15", {:pid=>1956}]
-["prime checker", :prime?, "16", {:pid=>1958}]
-["prime checker", :prime?, "17", {:pid=>1957}]
-["prime collector", :received, "17", {:from_pid=>"1957"}]
-["prime checker", :prime?, "18", {:pid=>1956}]
-["prime checker", :prime?, "19", {:pid=>1958}]
-["prime collector", :received, "19", {:from_pid=>"1958"}]
-["prime checker", :prime?, "20", {:pid=>1957}]
-["prime checker", :prime?, "21", {:pid=>1956}]
-["prime checker", :prime?, "22", {:pid=>1958}]
-["prime checker", :prime?, "23", {:pid=>1957}]
-["prime collector", :received, "23", {:from_pid=>"1957"}]
-["prime checker", :prime?, "24", {:pid=>1956}]
-["prime checker", :prime?, "25", {:pid=>1958}]
-["prime checker", :prime?, "26", {:pid=>1957}]
-["prime checker", :prime?, "27", {:pid=>1956}]
-["prime checker", :prime?, "28", {:pid=>1958}]
-["prime checker", :prime?, "29", {:pid=>1957}]
-["prime collector", :received, "29", {:from_pid=>"1957"}]
-["prime checker", :prime?, "30", {:pid=>1956}]
-["prime checker", :prime?, "31", {:pid=>1958}]
-["prime collector", :received, "31", {:from_pid=>"1958"}]
-["prime checker", :prime?, "32", {:pid=>1957}]
-["prime checker", :prime?, "33", {:pid=>1956}]
-["prime checker", :prime?, "34", {:pid=>1958}]
-["prime checker", :prime?, "35", {:pid=>1957}]
-["prime checker", :prime?, "36", {:pid=>1956}]
-["prime checker", :prime?, "37", {:pid=>1958}]
-["prime collector", :received, "37", {:from_pid=>"1958"}]
-["prime checker", :prime?, "38", {:pid=>1957}]
-["prime checker", :prime?, "39", {:pid=>1956}]
-["prime checker", :prime?, "40", {:pid=>1958}]
-["prime checker", :prime?, "41", {:pid=>1957}]
-["prime collector", :received, "41", {:from_pid=>"1957"}]
-["prime checker", :prime?, "42", {:pid=>1956}]
-["prime checker", :prime?, "43", {:pid=>1958}]
-["prime collector", :received, "43", {:from_pid=>"1958"}]
-["prime checker", :prime?, "44", {:pid=>1957}]
-["prime checker", :prime?, "45", {:pid=>1956}]
-["prime checker", :prime?, "46", {:pid=>1958}]
-["prime checker", :prime?, "47", {:pid=>1957}]
-["prime collector", :received, "47", {:from_pid=>"1957"}]
-["prime checker", :prime?, "48", {:pid=>1956}]
-["prime checker", :prime?, "49", {:pid=>1958}]
-["prime checker", :prime?, "50", {:pid=>1957}]
\ No newline at end of file
+["prime checker", :started, {:pid => 1958}]
+["prime checker", :started, {:pid => 1957}]
+["prime checker", :started, {:pid => 1956}]
+["prime checker", :prime?, "1", {:pid => 1958}]
+["prime checker", :prime?, "2", {:pid => 1957}]
+["prime collector", :received, "2", {:from_pid => "1957"}]
+["prime checker", :prime?, "3", {:pid => 1956}]
+["prime collector", :received, "3", {:from_pid => "1956"}]
+["prime checker", :prime?, "4", {:pid => 1958}]
+["prime checker", :prime?, "5", {:pid => 1957}]
+["prime collector", :received, "5", {:from_pid => "1957"}]
+["prime checker", :prime?, "6", {:pid => 1956}]
+["prime checker", :prime?, "7", {:pid => 1958}]
+["prime collector", :received, "7", {:from_pid => "1958"}]
+["prime checker", :prime?, "8", {:pid => 1957}]
+["prime checker", :prime?, "9", {:pid => 1956}]
+["prime checker", :prime?, "10", {:pid => 1958}]
+["prime checker", :prime?, "11", {:pid => 1957}]
+["prime collector", :received, "11", {:from_pid => "1957"}]
+["prime checker", :prime?, "12", {:pid => 1956}]
+["prime checker", :prime?, "13", {:pid => 1958}]
+["prime collector", :received, "13", {:from_pid => "1958"}]
+["prime checker", :prime?, "14", {:pid => 1957}]
+["prime checker", :prime?, "15", {:pid => 1956}]
+["prime checker", :prime?, "16", {:pid => 1958}]
+["prime checker", :prime?, "17", {:pid => 1957}]
+["prime collector", :received, "17", {:from_pid => "1957"}]
+["prime checker", :prime?, "18", {:pid => 1956}]
+["prime checker", :prime?, "19", {:pid => 1958}]
+["prime collector", :received, "19", {:from_pid => "1958"}]
+["prime checker", :prime?, "20", {:pid => 1957}]
+["prime checker", :prime?, "21", {:pid => 1956}]
+["prime checker", :prime?, "22", {:pid => 1958}]
+["prime checker", :prime?, "23", {:pid => 1957}]
+["prime collector", :received, "23", {:from_pid => "1957"}]
+["prime checker", :prime?, "24", {:pid => 1956}]
+["prime checker", :prime?, "25", {:pid => 1958}]
+["prime checker", :prime?, "26", {:pid => 1957}]
+["prime checker", :prime?, "27", {:pid => 1956}]
+["prime checker", :prime?, "28", {:pid => 1958}]
+["prime checker", :prime?, "29", {:pid => 1957}]
+["prime collector", :received, "29", {:from_pid => "1957"}]
+["prime checker", :prime?, "30", {:pid => 1956}]
+["prime checker", :prime?, "31", {:pid => 1958}]
+["prime collector", :received, "31", {:from_pid => "1958"}]
+["prime checker", :prime?, "32", {:pid => 1957}]
+["prime checker", :prime?, "33", {:pid => 1956}]
+["prime checker", :prime?, "34", {:pid => 1958}]
+["prime checker", :prime?, "35", {:pid => 1957}]
+["prime checker", :prime?, "36", {:pid => 1956}]
+["prime checker", :prime?, "37", {:pid => 1958}]
+["prime collector", :received, "37", {:from_pid => "1958"}]
+["prime checker", :prime?, "38", {:pid => 1957}]
+["prime checker", :prime?, "39", {:pid => 1956}]
+["prime checker", :prime?, "40", {:pid => 1958}]
+["prime checker", :prime?, "41", {:pid => 1957}]
+["prime collector", :received, "41", {:from_pid => "1957"}]
+["prime checker", :prime?, "42", {:pid => 1956}]
+["prime checker", :prime?, "43", {:pid => 1958}]
+["prime collector", :received, "43", {:from_pid => "1958"}]
+["prime checker", :prime?, "44", {:pid => 1957}]
+["prime checker", :prime?, "45", {:pid => 1956}]
+["prime checker", :prime?, "46", {:pid => 1958}]
+["prime checker", :prime?, "47", {:pid => 1957}]
+["prime collector", :received, "47", {:from_pid => "1957"}]
+["prime checker", :prime?, "48", {:pid => 1956}]
+["prime checker", :prime?, "49", {:pid => 1958}]
+["prime checker", :prime?, "50", {:pid => 1957}]