13,009
回編集
|  (→排他処理) | |||
| 341行目: | 341行目: | ||
| *: lockキーワードは内部的に<code>Monitor</code>クラスを使用している。 | *: lockキーワードは内部的に<code>Monitor</code>クラスを使用している。 | ||
| *: <code>Monitor</code>クラスを直接使用する場合、より細かい制御が可能になる。 | *: <code>Monitor</code>クラスを直接使用する場合、より細かい制御が可能になる。 | ||
| *: <br> | *: <br> | ||
| * ReaderWriterLockSlim | * ReaderWriterLockSlim | ||
| 358行目: | 350行目: | ||
| *: <br> | *: <br> | ||
| *: ただし、小規模なファイル操作の場合は、ReaderWriterLockSlimのオーバーヘッドがlockキーワードよりも大きくなる可能性があることに注意する。 | *: ただし、小規模なファイル操作の場合は、ReaderWriterLockSlimのオーバーヘッドがlockキーワードよりも大きくなる可能性があることに注意する。 | ||
| *: <br> | |||
| * Mutexクラス | |||
| *: プロセス間の同期に使用する。 | |||
| *: 複数のアプリケーションインスタンス間での排他制御が必要な場合に適している。 | |||
| *: <br> | |||
| * Semaphore / SemaphoreSlim | |||
| *: リソースへのアクセスを制限する必要がある場合に使用する。 | |||
| *: 例えば、同時に最大N個のスレッドがリソースにアクセスできるようにする場合等である。 | |||
| *: <br> | *: <br> | ||
| * Interlockedクラス | * Interlockedクラス | ||