我正在使用python进行多处理以执行许多任务。但是,在脚本启动任务到完成任务之间,可能需要启动其他任务。
换句话说,我想找到一种在执行任务时更新任务队列的方法。
到目前为止,我有这样的事情:
**python**
def main(list_of_task):
number_of_processes = cpu_count()
q = Queue()
task = []
for filename in list_of_task:
q.put(filename)
# creating processes
for w in range(number_of_processes):
p = Process(target=do_job, args=(q,))
task.append(p)
p.start()
# completing process
for p in processes:
p.join()
if __name__ == '__main__':
# Getting the list of task from a text file
file_list_of_task = open("list_of_task.txt")
list_of_task = []
for line in file_list_of_task :
list_of_task.append(line)
# Running the main script
main(list_of_task)
由此,我想在for循环完成之前更新队列。因此,文件“ list_of_task.txt”将自动更新。
有什么办法可以做到这一点?
谢谢
E