为什么当我的 Mac 锁定时进程会随机挂起

Why do processes hang randomly while my Mac is locked

提问人:gbohus 提问时间:2/6/2023 更新时间:2/10/2023 访问量:47

问:

这是在运行 MacOS Catalina 的 iMac(2015 年末)上。所有节能选项均已关闭。

我已经注意到了几个长时间运行的进程,所以我做了一个简单的例子。

我跑了

while true; do date; sleep 60; done

上午 11 点左右,让屏幕锁定。几个小时后,我回来检查一下。大约一个半小时后一切都很好,也就是说,我每分钟都会收到一行,然后

Mon Feb  6 12:32:39 CET 2023
Mon Feb  6 12:33:39 CET 2023
Mon Feb  6 12:41:33 CET 2023
Mon Feb  6 12:43:08 CET 2023
Mon Feb  6 12:52:57 CET 2023
Mon Feb  6 13:28:00 CET 2023

之后,它恢复正常大约半小时,然后再次开始不稳定。

经验表明,其他长时间运行的进程发生这种情况的时间是相当随机的。

关于如何避免这种情况的想法?我希望我的进程正常运行。谢谢。

macOS-Catalina 已锁定

评论

0赞 Rob 2/7/2023
您是否在问一个编程问题,即如何保持机器清醒并处理长时间的任务?也许 stackoverflow.com/q/5596319/1271826。或者您只是在寻找一种工具,例如 Amphetimine,可以为您做到这一点?
0赞 gbohus 2/8/2023
我会试一试安非他明。(你的第一个链接是非常特定于 Objective-C 的,我的大部分内容都是用 Python 编写的。如果它确实要睡觉了,为什么它会醒来并继续工作?无论如何,谢谢,我会尝试的。
0赞 Rob 2/8/2023
据我了解,在没有用户与 UI 交互的情况下,macOS 电源小睡会让机器进入睡眠状态,但会定期唤醒,运行计划在这段时间内运行的任何内容,然后再打盹。Re TN QA1340,是的,这是一个从 Swift 或 Objective-C 访问的 API。

答:

0赞 gbohus 2/10/2023 #1

正如@Rob昨天的评论中提到的,在“能源”设置中关闭电源小睡似乎可以解决这个问题。(我现在有机会测试了好几个时期,包括通宵。

谢谢!