1
使用類變量與Rails中的線程進行通信是否爲0K?我可以使用類變量與線程通信嗎?
與使用隊列相比有什麼優點或缺點嗎?
我不知道,如果這個工程在任何環境下,它的工作在我的:Ruby企業+乘客+的nginx + Rails的3
下面是一個例子:
# rails runner "ThreadJob.new.run"
class ThreadJob
@@counter = 0
def run
producer = Thread.new do
1.upto 10 do
sleep 1
@@counter+= 1
puts "Producer: #{@@counter}"
end
end
consumer = Thread.new do
sleep 0.5
1.upto 10 do
sleep 1
@@counter-= 1
puts "Consumer: #{@@counter}"
end
end
producer.join
consumer.join
puts @@counter # result should be 0
end
end
我想知道如果如果我在另一個進程中修改@@ counter,這可以工作。