我正在尝试构建一个每 10 分钟运行一次 bash 脚本的应用程序。我正在使用 apscheduler 来完成此任务,当我从终端运行我的代码时,它就像时钟一样工作。但是,当我尝试从另一个模块运行代码时,它崩溃了,我怀疑调用模块正在等待“计划”模块完成,然后在这种情况永远不会发生时崩溃。
错误代码
/bin/bash: line 1: 13613 Killed ( python ) < /tmp/vIZsEfp/26
shell returned 137
调用调度的函数
def shedual_toggled(self,widget):
prosessSchedular.start_background_checker()
安排节目
def schedul_check():
"""set up to call prosess checker every 10 mins"""
print "%s check ran" %(counter)
counter =+ 1
app = prosessCheckerv3.call_bash() < calls the bash file
if app == False:
print "error with bash"
return False
else:
prosessCheckerv3.build_snap_shot(app)
def start_background_checker():
scheduler = BackgroundScheduler()
scheduler.add_job(schedul_check, 'interval', minutes=10)
scheduler.start()
while True:
time.sleep(2)
if __name__ == '__main__':
start_background_checker()
该程序仅调用另一个 10 分钟。作为旁注,我一直试图尽可能远离多线程,但如果需要,那就这样吧。