我使用Rufus :: Scheduler来安排任务,代码如下:
class Scheduler
def self.run
scheduler = Rufus::Scheduler.start_new
job = scheduler.in '5s', A.new
scheduler.join
end
class A
def call(job)
puts "xxxxxx"
end
end
end
Scheduler.run
运行代码后,它打印'xxxx',但在运行调用方法后,连接无法自行退出并始终挂起。
有没有办法在等待完成工作后退出连接?谢谢你。
答案 0 :(得分:2)
调度程序意味着“永远”运行。调用“join”加入调度程序线程,仅在线程死亡时退出。
你应该重新考虑你的代码,你正试图像锤子一样使用锤子。
答案 1 :(得分:-3)
使用普通线程可以达到要求。