欢迎各位兄弟 发布技术文章
这里的技术是共享的
在 macOS 锁屏状态下,程序的运行情况取决于程序的类型和系统设置,以下是详细说明:
前台应用:当屏幕锁定时,具有图形界面的前台应用(如 Safari、文本编辑器)会暂停执行或进入低功耗状态,但进程通常不会被终止。
后台应用:部分后台应用(如下载工具、音乐播放器)可能继续运行,但可能会受到系统资源限制。
通过终端启动的程序(如 python script.py
)默认会继续运行,除非:
程序依赖图形界面(GUI)且被系统暂停。
用户主动终止或程序遇到错误。
系统服务(如 Apache、MySQL)和通过 launchd
管理的进程会持续运行,不受锁屏影响。
合盖或睡眠模式:如果系统进入深度睡眠(默认设置),所有程序的 CPU 执行会被暂停(类似冻结),唤醒后恢复。可通过以下设置调整:
终端命令:禁用睡眠(谨慎使用)
bashsudo systemsetup -setcomputersleep Never
节能设置:勾选 "防止进入睡眠状态"(需应用支持,如 caffeinate
命令)。
使用 nohup
或 tmux
(推荐):
bashnohup your_command & # 忽略挂断信号 或 tmux new -s session_name # 创建持久会话
caffeinate
工具:临时阻止系统睡眠
bashcaffeinate -i terminal_command # 保持活跃状态
网络活动:部分应用(如邮件客户端、云同步工具)可能在锁屏时暂停网络请求以省电,但通常会在解锁后恢复。
程序类型 | 锁屏时是否运行 | 备注 |
---|---|---|
普通 GUI 应用 | ❌ 暂停 | 部分后台任务可能继续 |
终端命令 | ✅ 是 | 除非依赖 GUI 或系统休眠 |
守护进程/服务 | ✅ 是 | 如 Docker、Web 服务器 |
合盖/睡眠模式 | ❌ 暂停 | 需调整电源设置避免休眠 |
如果需要程序持续运行,建议使用 tmux
/nohup
或关闭睡眠功能(注意电池续航)。