簡體   English   中英

process.waitFor()沒有結束

[英]process.waitFor() does not end

我在執行Perl腳本的地方有一個JAVA代碼。 某些腳本不返回響應代碼,但需要密碼才能執行。 在這種情況下,我的代碼不會返回,並且process.waitFor()不斷地等待。 有辦法解決嗎?

Process process = pb.start();
            int returnCode = process.waitFor();
            System.out.print("return code>>"+ returnCode );

我的代碼旨在運行命令並顯示響應代碼。

我在這里看到兩個選擇:

  • 您可以通過Proecess::getOutputStream獲取其OutputStream來正確管理該進程的stdin,以便您可以正確發送輸入並讓該進程完成
  • 您可以銷毀進程(請參閱Process::destroyProcess::destroyForcibly ),但這意味着您必須選擇一個最大的等待時間(這樣做可能會造成問題,因為您實際上是在試圖殺死一個進程)一些操作的中間)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM