我需要在特定时间运行rake脚本。例如10分钟,1小时等,如果脚本未完成则无论如何都要停止它。
为什么我需要这个?因为几个小时后记忆已经满了!
有什么建议吗?
由于
答案 0 :(得分:0)
我认为你应该首先考虑是什么让这个脚本耗尽了这么多内存。
(有一件事是从数据库中加载大量记录,并将它们附加到数组中)
但假设你已经尽力了, 我会做这样的事情。
LIVE_FOR = 1.hour
def run!
finish_before = LIVE_FOR.from_now
array = get_the_array # some big collection to operate on
array.each do |object|
while Time.now < finish_before
...
end
end
end
但实际上,我首先尝试解决你为什么会有内存泄漏的问题。