C# でプロセス コンテキスト スイッチのおおよその時間を測定する可能性はありますか? はいの場合、どのように?
この質問は、 Cracking the Coding Interview: 150 Programming Questions and Solutionsという本に基づいて作成しました。
彼らの解決策は次のとおりです。
P1 と P2 の 2 つのプロセスしかないとします。(これは大まかな概算です。より正確な概算があると思います)
P1 は実行中で、P2 は実行を待機しています。ある時点で、OS は P1 と P2 を交換する必要があります。これが P1 の N 番目の命令で発生すると仮定しましょう。したがって、この場合のコンテキスト切り替え時間は次のようになります。
Time_Stamp(P2_1) - TimeStamp(P2_N)
問題の 1 つは、プロセス内のすべての命令のタイムスタンプを記録できないことです。また、他のプロセス間のコンテキスト切り替えにかかる時間は考慮していません。