を使用するRailsアプリケーションがありますOpen3.popen3
。正常に動作しますが、プロセスが完了するのを待たずにアプリケーションが続行することがあります。
私が使用Open3.popen3
している関数は次のようになります (基本的にはcat
関数を実行します)。
def cat_func(var)
## some stuff happens
exit = 0
Open3.popen3(" #{cat_command}"){|stdin, stdout, stderr, wait_thr|
pid = wait_thr.pid
error = std err.gets
exit = wait_thr.value
}
#HERE IS TRYING TO INTERCEPT ERRORS:
if error.match(/^cat:/)
### Do something
end
call_next_function
end
私は何を間違っていますか?