我有一個類,啓動和管理工作線程。線程看起來是這樣的:在Ruby線程中多睡幾個小時會有什麼性能影響?
DELAY = 6 * 60 * 60 # Sleep 6 hours by default
Thread.new do
do_some_work()
sleep(DELAY)
end
do_some_work
也不是很耗費資源的,以約5秒即可完成平均;但它不應該阻止,如果我經常打電話,那麼就有可能發生限制錯誤。
我不確定在Ruby線程中睡多個小時會有什麼影響。我是否期望使用此代碼的任何嚴重的性能處罰?可能值得注意的是,我無法使用cron作業來完成此任務。
這通常是一個標誌,你需要一個適當的任務調度程序,而不是一些睡眠任意時間的線程。 'cron'在這裏也是一個不錯的選擇。 – tadman
'cron'是我的第一個想法;不幸的是,我不能在這種情況下使用它。不過,我很欣賞這個答案。 – jamesberlage