1
我有一个python进程在后台产生多个其他进程。我希望我可以做多线程,但我的代码使用的底层库在多线程环境中不可靠。Python睡眠过程进入无限期睡眠
我的后台python进程需要等待将近一个小时的事件。检查该事件是否发生的唯一方法是使用轮询方法。
所以,我有一个睡眠分钟的代码(time.sleep(60)
),并醒来后做一些工作。投票几件事,并去睡觉。
但是,我经历过多次一个/多个线程进入深度睡眠并且从不出来。可能是什么原因?有一个更好的方法吗。 (我不等待IO)
while True:
if event:
#do lot of stuff
break
else:
#do some stuff
time.sleep(60)
(该平台是OSX)
感谢
你确定它是由'睡眠'引起的,而不是其他代码所做的事情吗?例如,你可能没有考虑到循环应该中断的一些情况,所以它一直在睡觉。 – Munir
'但我的代码使用的底层库在多线程环境中不可靠,但它是可靠的多进程?你在使用什么库,你想做什么? “事件”从哪里来? – Falmarri
图书馆是我工作场所的一些内部图书馆。多进程安全的概率很高。或者我会成为发现错误的人。 :(我正在寻找像设备连接到总线/文件是由用户在特定位置创建的事件。 –