gpt4 book ai didi

java - Windows操作系统中系统重启后如何获取旧进程ID?

转载 作者:行者123 更新时间:2023-12-02 11:23:41 25 4
gpt4 key购买 nike

我正在开发一个项目,需要在 Windows 操作系统中获取进程的旧 PID。

旧 PID 是指在系统重新启动之前指定给特定进程的 PID(例如记事本指定的 PID 100)。现在重新启动系统后,我需要旧的 PID(100) 并再次启动该进程。

Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec("C:\\Windows\\notepad.exe");

这是我的示例代码,如果可能的话请提供解决方案或任何其他方式我可以找回旧的 PID 和旧的进程。

最佳答案

在 UNIX 系统上,通常的做法是在启动和停止应用程序的脚本所在的目录中创建一个名为 .pid 的简单文本文件。它包含正在运行的进程的pid号。

如果应用程序崩溃(或者系统在没有完全关闭的情况下重新启动),.pid 文件将保留。

重新启动应用程序时,虽然从操作角度来看,.pid 文件中包含的 pid 编号不再相关,但可以方便地知道进程崩溃了(或者至少没有关闭)干净地关闭) - 通常该操作的 start 脚本将检查 .pid 文件,并且在手动删除该文件之前不会启动应用程序。

所以你可以在你的情况下做类似的事情。您需要“包装”进程/服务的启动和关闭以促进这一点。

这是一个相关问题:What is a .pid file and what does it contain?

关于java - Windows操作系统中系统重启后如何获取旧进程ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49746726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com