<address id="zhpbl"></address>
<noframes id="zhpbl">
<address id="zhpbl"><form id="zhpbl"><th id="zhpbl"></th></form></address>

    <em id="zhpbl"></em>

      <address id="zhpbl"><th id="zhpbl"><progress id="zhpbl"></progress></th></address>
      更多精彩內容,歡迎關注:

      視頻號
      視頻號

      抖音
      抖音

      快手
      快手

      微博
      微博

      java process

      文檔

      java process

      在項目開發中,經常會遇到調用其它程序功能的業務需求,在java中可以采用process類實現,process是一個抽象的類,它包括abstract voiddestroy()、abstract intexitValue()等6個抽象的方法。
      推薦度:
      導讀在項目開發中,經常會遇到調用其它程序功能的業務需求,在java中可以采用process類實現,process是一個抽象的類,它包括abstract voiddestroy()、abstract intexitValue()等6個抽象的方法。

      java process是什么?一起來看看小編今天的分享吧!

      在項目開發中,經常會遇到調用其它程序功能的業務需求,在java中通常有兩種實現方法,包括:

      Runtime?runtime?=?Runtime.getRuntime();
      Process?p?=runtime.exec(cmd);

      Process?p=new?ProcessBuilder(cmd).start();

      在這里就需要認識一下process類,process是一個抽象的類,它包含6個抽象的方法:

      abstract??voiddestroy()?
      ??????????殺掉子進程。
      abstract??intexitValue()?
      ??????????返回子進程的出口值。
      abstract??InputStreamgetErrorStream()?
      ??????????獲取子進程的錯誤流。
      abstract??InputStreamgetInputStream()?
      ??????????獲取子進程的輸入流。
      abstract??OutputStreamgetOutputStream()?
      ??????????獲取子進程的輸出流。
      abstract??intwaitFor()?
      ??????????導致當前線程等待,如有必要,一直要等到由該?Process?對象表示的進程已經終止。

      以“ping?百度網址”為例:

      import?java.io.IOException;
      ?
      public?class?ProcessDemo?{
      ????????public?static?void?main(String[]?args)?{
      ????????????????try?{
      ?????????????????????????Process?process?=?Runtime.getRuntime().exec("ping?www.baidu.com");
      ?????????????????????????System.out.println("任務執行完畢!");
      ??????????????}?catch?(IOException?e)?{
      ???????????????????????????????????????//?TODO?Auto-generated?catch?block
      ???????????????????????????????????????e.printStackTrace();
      ??????????????}
      ???????}
      }

      由于Process提供了WaitFor和getInputStream兩個方法,這兩個方法都阻塞java線程,使調用ping被掛到后臺運行,程序直接打印“任務執行完畢!”,而我們想要的效果是先把ping操作執行完成后,再輸出“任務執行完畢!”,可以等待腳本返回或結束后,再繼續執行java程序:

      import?java.io.BufferedReader;
      import?java.io.IOException;
      import?java.io.InputStreamReader;
      ?
      public?class?ProcessDemo?{
      ?????????public?static?void?main(String[]?args)?{
      ???????????????????try?{
      ????????????????????????Process?process?=?Runtime.getRuntime().exec("ping?www.baidu.com");
      ????????????????????????BufferedReader?bufferedReader?=?new?BufferedReader(
      ??????????????????????????????????new?InputStreamReader(process.getInputStream(),"gbk"));
      ????????????????????????String?line;
      ????????????????????????while?((line?=?bufferedReader.readLine())?!=?null)?{
      ????????????????????????????System.out.println(line);
      ????????????????????????}
      ????????????????????????System.out.println("任務執行完畢!");
      ?????????????????????}?catch?(IOException?e)?{
      ????????????????????????//?TODO?Auto-generated?catch?block
      ???????????????????????e.printStackTrace();
      ??????????????????????}
      ???????????}
      }
      import?java.io.IOException;
      ?
      public?class?ProcessDemo?{
      ?????public?static?void?main(String[]?args)?{
      ??????????try?{
      ??????????????Process?process?=?Runtime.getRuntime().exec("ping?www.baidu.com");
      ??????????????process.waitFor();
      ??????????????System.out.println("任務執行完畢!");
      ??????????}?catch?(IOException?e)?{
      ??????????????//?TODO?Auto-generated?catch?block
      ??????????????e.printStackTrace();
      ??????????}?catch?(InterruptedException?e)?{
      ??????????????????????????????????????????????????????????//?TODO?Auto-generated?catch?block
      ??????????????e.printStackTrace();
      ??????????}
      ?????}
      }

      這樣就完成了process的Java程序操作。

      以上就是小編今天的分享了,希望可以幫助到大家。

      文檔

      java process

      在項目開發中,經常會遇到調用其它程序功能的業務需求,在java中可以采用process類實現,process是一個抽象的類,它包括abstract voiddestroy()、abstract intexitValue()等6個抽象的方法。
      推薦度:
      為你推薦
      資訊專欄
      熱門視頻
      相關推薦
      deque java linux 格式化u盤 js讀取文件 python 交集 object 轉list object轉bigdecimal java get和set方法 python中get函數用法 js set方法 mysql去重復 保留一條 rstudio使用教程 oracle coalesce python configparser模塊 python strip函數 python調用dll java concat js 遍歷json js json對象 js數組遍歷方法 python 引用 armoury crate打不開 python skimage vue使用jquery js set去重 python的range函數用法 vue 調用子組件方法 java反射獲取屬性值 python中find函數的用法 getclass方法 python中strip函數的用法 js class類 mysql time類型 python中sorted函數的用法 cad的基本命令 ubuntu卸載mysql js獲取隨機數 opencv安裝教程python python numpy教程 js獲取日期 python tkinter教程
      Top 少妇高潮太爽了在线视频