[英]Getting process status and exit code from process id in ruby
我想在Ruby中创建s子Open3.popen3
以运行和与其他程序进行交互,并且我需要使用Process.spawn
因为Open3.popen3
在Windows中不起作用。 Open3.popen3
为您提供了一个不错的等待线程对象,该对象使您可以通过wait_thr.status
检查进程是否完成,并且一旦完成,就可以通过wait_thr.value.exitstatus
获取退出代码。
Process.spawn
只给您pid
,因此我需要一种方法来从进程ID中获取该数据。 我查看了Process
和Kernel
模块,却一无所获。 Process::Status
具有我所需的一切,但是我找不到有关如何从pid创建一个的任何信息。
我如何知道流程何时完成以及退出状态是什么?
我相信您可以使用win32-api gem
然后,您可以从win32 API使用GetExitCodeProcess函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.