gpt4 book ai didi

Ruby 执行卡在 system() 行

转载 作者:太空宇宙 更新时间:2023-11-03 17:29:24 25 4
gpt4 key购买 nike

这是我的代码片段

def execution_start
puts "About to start"
system("appium")
puts "Done!!"
end

执行此命令时,我看到输出 About to start,appium 服务器已启动。但在那之后,我没有看到任何事情发生。它永远卡住了。有什么想法吗?

最佳答案

system 阻塞,直到它运行的命令完成。要运行命令并立即返回,请使用 Process#spawn :

def execution_start
puts "About to start"
pid = Process.spawn("appium")
puts "Done!!"
end

然后您可以使用返回的 PID 来监视进程是否已完成执行,以及稍后在您的程序中使用什么退出代码。

(请注意,根据文档,您最终需要 Process#wait PID,或者至少使用 Process#detach 注册不感兴趣以防止子进程成为一个僵尸。)

关于Ruby 执行卡在 system() 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50725536/

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