Javaは外部プログラムを呼び出し、新しいプロセスを開く


背景:javaはマルチスレッドをサポートしています.これはほとんどのプログラムが満たす必要条件です.マルチスレッドはプログラムの「スループット」を増加させ、ユーザーのソフトウェアに対するスムーズな体験を高めることができるからです.            また、javaプログラムは、新しいプロセスを開くか、javaと呼ばれる外部アプリケーションを呼び出すこともサポートします.ここでの実装javaは、Process、RunTimeの2つのクラスを提供します.            これらのクラス間の関係:            1.プロセスビルダーを使用してプロセスインスタンスを構築します.            2.RunTimeでProcessインスタンスを構築します.            コードは次のとおりです.
//      ,   shell   	
String cmds[] = {"/bin/bash","-c","chmod -R 766 /opt/game_plugin/*"};
//Process process1= Runtime.getRuntime().exec(cmds);
		
ProcessBuilder builder = new ProcessBuilder(cmds);
Process process = builder.start();
		
while(process.isAlive()) {//         
	Thread.sleep(1000);
}
System.out.println("     :"+process.exitValue());

説明:
1.java基本クラスライブラリで「プロセス」を単語「プロセス」で識別します.すなわち、現実世界の「プロセス」はjavaでプロセスクラスとして定義され、「色」がColorクラスであるように定義される.【Java類は、現実世界のものがjava世界で探している対応するものです】
2.作成されたProcessインスタンスには端末やコンソールがないため、プロセスと対話するにはProcessが提供する3つのストリームが必要です.getInputStream、getOutPutSteam、getErrorStreamです.もちろん、プロセスに関連する他の方法も提供されています.3.「-c」は、liunxのshellコマンドを呼び出すコードjavaです.-cの意味はコマンド「/bin/bash」  の「オプション」は「chmod-R 766/opt/game_plugin/*」