进程进入无限期睡眠的Python睡眠

2024-04-25 22:09:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python进程,它在后台生成多个其他进程。我希望我能做多线程,但我的代码使用的底层库在多线程环境中是不可靠的。你知道吗

我的后台python进程需要为一个事件等待近一个小时。检查事件是否发生的唯一方法是使用轮询方法。你知道吗

所以,我有一个代码,可以睡一分钟(time.sleep(60)),然后醒来做一些工作。只做了几件事就睡着了。你知道吗

然而,我经历过很多次一个或多个线程进入深度睡眠,从来没有出来。原因是什么?有没有更好的办法。(我不等待IO)

 while True:
    if event:
      #do lot of stuff
      break
    else:
      #do some stuff
    time.sleep(60)

(平台为OSX)

谢谢


Tags: 方法代码环境time进程事件原因sleep
1条回答
网友
1楼 · 发布于 2024-04-25 22:09:52

你好像有一个无限循环。
while TRUE总是TRUE,所以它保持在那个循环中。
只有当if eventTRUE时才会有break。你知道吗

代码中的问题似乎是if event总是FALSE,而从来不是TRUE。所以你就留在你的while循环里。你知道吗

相关问题 更多 >