除了运行无限循环外,是否有其他机制可用于创建长时间运行的进程?
常见的模式似乎是这样:
while True:
# Check for some condition or waiting for some event
# Do some processing
time.sleep(0.01)
我特别感兴趣的是这个过程充当监听某个事件的工作者的情况(例如,在任务队列上等待)。
替代方法的性能特征是什么?
答案 0 :(得分:1)
关于“等待和处理工作”的现有技术已经通过几种不同的方式完成:
multiprocessing
和threading
)答案 1 :(得分:0)
如果您预计需要为许多长时间运行的任务(以及扩展到更多计算机)的性能,那么可以使用更高级别的系统Celery:
“Celery是一个简单,灵活,可靠的分布式系统 处理大量的消息,同时提供操作 维护这种系统所需的工具。 这是一个有焦点的任务队列 在实时处理上,同时也支持任务调度。“