gpt4 book ai didi

ruby - 使用 Ruby 1.8 和 Windows fork

转载 作者:可可西里 更新时间:2023-11-01 12:08:01 24 4
gpt4 key购买 nike

我使用的是 ruby​​ 1.8.7 补丁级别 302,我正在 Windows xp 系统上工作。我必须启动一个需要对用户输入使用react的外部进程。如果我使用线程,进程不会使用react,所以我尝试使用 fork。使用 fork,外部进程对用户输入使用react,但它执行的不仅仅是 fork block 。例如

fork do
puts 'child'
end
puts 'parent'
Process.wait
puts 'done'

在我的机器上产生以下输出:

parent
child
parent
done
done

如您所见,'done' 和 'parent' 被打印了两次。我该怎么做才能让 child 只执行它的 block 而不是更多? (由于一些 gem ,我无法切换到 Ruby 1.9)

最佳答案

像那样:

if child = fork
puts 'parent'
Process.wait
puts 'done'
else
puts 'child'
end

关于ruby - 使用 Ruby 1.8 和 Windows fork,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3853250/

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