1

たとえば、これは私のbashスクリプトです

osascript -e 'tell app "Terminal"
 do script "./process1"
end tell'

osascript -e 'tell app "Terminal"
 do script "./process2"
end tell'

基本的に、2 つの異なるターミナル ウィンドウ (Mac の場合) を開き、定義されたコマンドを実行します。私はJavaでこれをやろうとしています

process1 = Runtime.getRuntime().exec(new String[]{"process1"});
process2 = Runtime.getRuntime().exec(new String[]{"process2"});

問題は、ターミナルが 1 つしか開かれておらず (バックグラウンドで実行されている)、2 つのコマンド process1 と process2 が実行されているように見えることです。しかし、プロセス 1 はその端末をビジーにしておくため、プロセス 2 は実行できません。そのため、別のターミナルを開いてこれらのコマンドを実行したいのです。

4

1 に答える 1

0

それぞれにスレッドを作成します。時間空間を「スリープ(しばらくスレッド1または2)」にすると、オペレーティングシステムに応じて両方が実行されます。

于 2013-04-10T17:28:27.077 に答える