.NETでのMutexとSemaphoreの違いは何ですか?.NETでのmutexとsemaphoreの違いは何ですか?
-1
A
答えて
1
私は本当に知っている.Net。一般に、mutexは単純化されたセマフォー・バージョンです。
セマフォーは値で初期化されます。スレッドが保護されたリソースにアクセスするたびに、セマフォー値はデクリメントされ、0に達するとスレッドはアクセスできなくなりますいずれかのスレッドが値をインクリメントするリソースを放棄するまで、リソースはもう使用できません。
ミューテックスは基本的に値1のセマフォです。したがって、スレッドが保護されたリソースにアクセスできるようにし、スレッドがリソースを離れるまでブロックします。
ここをご覧ください:http://niclasw.mbnet.fi/MutexSemaphore.html素晴らしいアナロジーです。
0
mutexは相互排除を提供しますが、process1またはprocess2のいずれかが の作業に進みます。バッファがprocess1で満たされている限り、process2は 待ちになり、逆も同様です。
セマフォは、共有リソースの同時ユーザー数を最大で最大数である に制限します。
関連する問題
- 1. boost :: signals2 :: mutexとboost :: thread :: mutexの違いは何ですか?
- 2. 実装でのセマフォとmutexの違いは何ですか?
- 3. AutoResetEventとMutexの違いは何ですか?
- 4. "mutex"と "lock"の違いは何ですか?
- 5. semaphore shmget()semflg = 384とは何ですか?
- 6. asp .netとasp .netコアの違いは何ですか?
- 7. .NETマイクロフレームワークと.NETコンパクトフレームワークの違いは何ですか?
- 8. 「.NET Core」と「.NET Core App」の違いは何ですか?
- 9. .NET Coreと.NET Frameworkの違いは何ですか?
- 10. .NETでは、AsFoo()とToFoo()の違いは何ですか?
- 11. .NETのトレースで "switch"と "filter"の違いは何ですか?
- 12. .NET doubleとpython floatの違いは何ですか? C#ので
- 13. 名前付きmutex-semaphoreをJavaで作成する
- 14. .NETコアのSDKとランタイムの違いは何ですか?
- 15. クラスライブラリと.NETコアクラスライブラリのテンプレートの違いは何ですか?
- 16. .NET 4のEnumerateFilesとEnumerateFileSystemEntriesの違いは何ですか?
- 17. .NET/JavaとRubyのドメインモデリングの主な違いは何ですか?
- 18. .NETのConcurrentQueueとBlockingCollectionの違いは何ですか?
- 19. .Netのバージョンと 'ランタイムバージョン'の違いは何ですか?
- 20. .NETのラムダ式と述語の違いは何ですか?
- 21. シェルスクリプトにmutex/semaphoreメカニズムがありますか?
- 22. .net Asyncとgoogleの主な違いは何ですか?
- 23. .netデータプロバイダとODBCドライバの違いは何ですか?
- 24. .NET Framework 4.6.1 Targeting Packと.NET Framework 4.6.1 Runtimeの違いは何ですか?
- 25. なぜmutexはmutexを必要としないのですか?mutexにはmutexが必要です...
- 26. showとshowdialogの違いは何ですか?C#.netのフォームクローズの期間です。
- 27. .NETのRegExでのグループと一致の違いは何ですか?
- 28. 3つのASP .NET Webプロジェクトテンプレートの違いは何ですか?
- 29. StatusCodeとControllerBase(.netコアWeb API)のOkResultとの違いは何ですか
- 30. .NET Unit Testingフレームワークの違いは何ですか?
ここで確認してください。https://docs.microsoft.com/en-us/dotnet/standard/threading/overview-of-synchronization-primitives –