def start(bofno):
"""定时程序"""
sel_plan = Basic_Infor.get_selectplan()
sel_plan = sel_plan[sel_plan["BofNo"] == bofno]
bscm33_df = Get_bscm33()
select_cast(sel_plan, bscm33_df, bofno) # 需要根据炉次计划进行判断 i 转炉号
def scde(bofno):
# 创建 scheduler 实例
scheduler = sched.scheduler(time.time, time.sleep)
# 计划任务每分钟运行一次
def schedule_task():
now = time.time()
scheduler.enter(60 - (now % 60), 1, schedule_task)
start(bofno) # 运行多进程程序
# 程序启动时首次调度任务
schedule_task()
# 运行 scheduler
try:
scheduler.run()
except KeyboardInterrupt:
pass
if __name__ == "__main__":
"""创建多进程"""
process_list = []
for i in range(5,9): # 5.6.7.8转炉
bofno = str(i) + "#BOF"
p = Process(target=scde,args=(bofno,)) #实例化进程对象
p.start()
process_list.append(p)
for pro in process_list:
p.join()
0923 进行修正
首先,根据实际情况创建自己需要进行(多进程和定时循环任务)的函数代码;然后将创建需要执行的函数,嵌入定时任务中任务中,里面定时循环函数使用schedule模块进行实现;最后将定时任务放入多进程函数中,实现多进程任务使用Process模块,获得多进程实现函数。