ホームページ >Java >&#&チュートリアル >Java `process.waitFor()` メソッドが停止するのはなぜですか?
Java の Runtime クラスの process.waitFor() メソッドは、いくつかの理由で返せないことがあります。
終わりがないプロセス
通常、waitFor() は、実行されたコマンドが終了しないために停止します。多くの場合、読み取られない出力を生成するプロセスが原因です。その結果、両方のプロセスが他のプロセスの完了を待つデッドロックが発生します。
デッドロックの回避
このデッドロックを解決するには、プロセスの入力ストリームから継続的に読み取ることが重要です。 。これにより、バッファーがいっぱいになってプロセスがブロックされるのを防ぎ、実行を継続して最終的に終了できるようになります。
追加リソース
Runtime.exec( ) 落とし穴と回避策については、「Runtime.exec() が動作しない場合」の記事を参照してください。
[ Runtime.exec() は実行できません](https://www.ibm.com/developerworks/java/library/j-whenexec/)
以上がJava `process.waitFor()` メソッドが停止するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。