是否可以创建一个“工作线程”,可以说它处于待机状态,直到它接收到异步执行的函数?
有没有办法发送一个像
def some_function
puts "hi"
# write something
db.exec()
end
到一个只是坐在那里等待的现有线程?
这个想法是我想典当一些数据库写入异步运行的线程。
我想创建一个Queue实例,然后让一个线程做这样的事情:
$command = Queue.new
Thread.new do
while trigger = $command.pop
some_method
end
end
$command.push("go!")
然而,这似乎不是一个特别好的方法。什么是更好的选择?