1

プロセスには、実行中、準備完了ブロック済み、および中断状態があることを学びました。スレッドはプロセスのアドレス空間に存在するため、中断を除いてこれらの状態もあります。

プロセスは、ブロッキング i/o を実行しているとき、またはイベントを待機しているとき、ほとんどの場合ブロックします。

プロセスがシングルスレッドの場合、または 1 対多のモデルに従っている場合、プロセスがブロックされることは簡単に想像できますが、プロセスがマルチスレッドの場合はどのように機能しますか?

例えば:

1 対 1 モデルに従うシステムに 2 つのスレッドを持つプロセスがあります。1 つは gui を処理し、もう 1 つはブロッキング i/o を処理します。他のスレッドが i/o を処理するため、プロセスが応答し続けることはわかっています。

プロセスがブロックされる可能性はありますか、それともこの場合は除外する必要がありますか?

私はこれらのことを始めたばかりなので、重要な詳細のいくつかをまだ理解していない場合はご容赦ください.

4

1 に答える 1