我想在 Ruby 中创建 s 子进程来运行和与其他程序交互,我需要使用Process.spawn
,因为Open3.popen3
在 Windows 中不起作用。Open3.popen3
为您提供了一个不错的等待线程对象,它允许您检查进程是否已通过 完成wait_thr.status
,一旦完成,您就可以通过wait_thr.value.exitstatus
.
Process.spawn
只给你pid
,所以我需要一种从进程ID中获取数据的方法。我查看了Process
andKernel
模块,一无所获。Process::Status
有我需要的一切,但我找不到任何关于如何从 pid 创建一个的信息。
我如何知道该过程何时完成以及它的退出状态是什么?