ホームページ >バックエンド開発 >C#.Net チュートリアル >C#でのManualResetEventの使い方を詳しく解説

C#でのManualResetEventの使い方を詳しく解説

黄舟
黄舟オリジナル
2017-05-28 09:59:591856ブラウズ

この記事では、ManualResetEvent の使い方を詳しく紹介します。興味のある方は参考にしてください。

この記事の例では、ManualResetEvent の使い方を皆さんに共有しています。具体的な内容は次のとおりです

1. ソースコードのダウンロード:

ダウンロードアドレス: ManualResetEvent

デモ:

2. ManualResetEvent の詳細な説明

ManualResetEvent を使用すると、スレッドがシグナリングによって相互に通信できるようになります。 。通常、この通信には、他のスレッドが続行する前に 1 つのスレッドが完了する必要があるタスクが含まれます。スレッドがアクティビティを開始すると (このアクティビティは、他のスレッドが開始できる前に完了する必要があります)、Reset を呼び出して ManualResetEvent を非終了 状態 にします。このスレッドは、ManualResetEvent を制御すると考えることができます。 ManualResetEvent で WaitOne を呼び出すスレッドはブロックされ、シグナルを待ちます。制御スレッドがアクティビティを完了すると、Set を呼び出して、待機中のスレッドが続行できることを通知します。そして待機中のスレッドをすべて解放します。 ManualResetEvent が終了すると、手動でリセットされるまで、ManualResetEvent は終了したままになります (つまり、WaitOne を呼び出したスレッドはすぐに戻り、ブロックされません)。 ManualResetEvent の初期状態は、コンストラクター にブール値を渡すことで制御できます。初期状態が終了する場合は true、それ以外の場合は false です。

リーリー

以上がC#でのManualResetEventの使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。