我有一个程序操作,在用户登录时启动,但它是长时间运行且本质上是非交互的,并且可以在后台完成。我对 Windows 中的进程生命周期感到困惑。
在遇到以下情况时,任何用户进程是否都可以可靠地继续运行(在后台):
- 用户退出
- 切换到其他帐户(无需注销)
- 用户锁定屏幕
- 电源状态切换(睡眠/休眠)
存在可以在重启/电源循环后自动重启的程序(例如 Edge 在自动软件更新后重新打开其标签页)。这些是特殊情况,还是只是连接到某些电源事件 API 的常规程序?
答案1
您问了几个不一定相关的问题。
用户进程以用户身份运行。当用户退出时,所有这些进程都会终止。
待机/休眠/锁定不会注销用户。
某些 Windows 应用程序会保存状态并在重启后重新打开,这样就可以从上次停止的地方“继续”使用。例如浏览器选项卡。
虚拟机挂起与物理机休眠相同。
利用这些信息,您可以推断出您所询问的所有不同场景的答案。