2017-05-15 23 views
0

私のREST APIが複数の非同期呼び出しを処理できるかどうかテストしたいと思います。複数のタブでMacシェルカール非同期呼び出し

curlというスクリプトで、forループで1000回APIを呼び出します。私は同時に5つのタブでこのスクリプトを実行します。

私の質問は、この本当の非同期テストですか、またはターミナルはこれらの呼び出しを同期して実行していますか?

答えて

1

、だから、各端末は、順次コマンドにその呼び出しを実行しますが、各ターミナルウィンドウには独自のプロセスを持っています(アクティビティモニタで見ることができるように)、その他の端末のウィンドウから独立して

enter image description here

5つの端末ウィンドウでは、5つの非同期プロセスが実行されています。

しかし、コマンドやスクリプトを1つの端末内でバックグラウンドで実行することもできます。マルチスレッドを実現します。端末コマンドを実行しているときに、&文字を追加すると、バックグラウンドで実行するよう端末に指示し、さらにコマンドを待つために端末を戻します。単一の端末で例えば

、のコマンドsleepを使用してみましょう、バックグラウンドモードでは、5回

enter image description here

私たちは、5つの別々のプロセスが作成されていることを、アクティビティモニタでプロセスリストから見ることができます

enter image description here

前面にバックグラウンド・プロセスをもたらすために、fgコマンドは、関連するプロで、使用されていますcess id(pid)をコマンドの引数として使用します。

関連する問題