3

Javaで複数のプロセス(スレッドではなくプロセス)を作成して、いくつかの並列作業を実行できるかどうか疑問に思いました。たとえば、5つの正方形の表面を計算するには、各正方形の計算を別々のプロセスで実行する必要があります。プロセスのフォークを使用することになっていますが、私はJavaでの並行性に慣れていないので、それらの方法を本当に知りません。これを私に説明してくれたり、そうしている場所や本に私を導いてくれたら、とてもありがたいです。私は並行性について多くのJavaの本を見てきましたが、プロセスについてではなくスレッドについてのみです。

4

1 に答える 1

2

ProcessBuilderクラス、または古いRuntime.execメソッドを使用してプロセスを起動できます。Unixシステムでは、これらはforkおよびexec関数を使用します。ProcessBuilderのドキュメントはここにあります。例が含まれています:http://docs.oracle.com/javase/7/docs/api/java/lang/ProcessBuilder.html

おそらく、計算結果を回復できるように、2つのプロセスがどのように相互に通信できるかについても知りたいと思うでしょう。ここで詳細に説明するにはオプションが多すぎます。人気のあるものは、パイプ、TCPソケット、メモリマップトファイル、およびメッセージキューです。

于 2013-03-23T21:38:17.260 に答える