gpt4 book ai didi

ruby-on-rails - 如何在 ruby​​ 中使用两个参数异步运行 exe?

转载 作者:数据小太阳 更新时间:2023-10-29 07:13:49 28 4
gpt4 key购买 nike

exe 应该在我打开页面时运行。异步进程需要运行。

有什么方法可以在 ruby​​ 中使用两个参数异步运行 exe 吗?

我已经尝试过 ruby​​ 命令 - system() 、 exec() 但它正在等待过程完成。我需要用参数启动 exe,无需等待进程完成

是否有任何 ruby​​gems 会支持我的问题?

最佳答案

您可以使用 Process.spawnProcess.wait2 :

pid = Process.spawn 'your.exe', '--option'

# Later...
pid, status = Process.wait2 pid

您的程序将作为解释器的子进程执行。除此之外,它的行为就像是从命令行调用的一样。

您还可以使用 Open3.popen3 :

require 'open3'
*streams, thread = Open3.popen3 'your.exe', '--option'

# Later...
streams.each &:close
status = thread.value

这里的主要区别在于您可以访问三个 IO对象。进程的标准输入、输出和错误流按顺序重定向到它们。

如果您打算使用程序的输出,或通过其标准输入流与其通信,这非常有用。通常会在终端上打印的文本将改为可供您的脚本使用。

您还获得了一个等待程序完成执行的线程,这既方便又直观。

关于ruby-on-rails - 如何在 ruby​​ 中使用两个参数异步运行 exe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10092357/

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