LinkedList.System.Collections.ICollection.SyncRoot プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > LinkedList.System.Collections.ICollection.SyncRoot プロパティの意味・解説 

LinkedList.System.Collections.ICollection.SyncRoot プロパティ

メモ : このプロパティは、.NET Framework version 2.0新しく追加されたものです。

ICollection へのアクセス同期するために使用できるオブジェクト取得します

名前空間: System.Collections.Generic
アセンブリ: System (system.dll 内)
構文構文

Private ReadOnly Property
 System.Collections.ICollection.SyncRoot As Object
 Implements ICollection.SyncRoot
Object ICollection.SyncRoot { get; }
private:
virtual property Object^ System.Collections.ICollection.SyncRoot {
    Object^ get () sealed = ICollection::SyncRoot::get;
}

プロパティ
ICollection へのアクセス同期するために使用できるオブジェクトLinkedList既定実装では、このプロパティは常に現在のインスタンス返します

解説解説

System.Collections.Generic のコレクション既定実装同期されません。

コレクション列挙処理は、本質的にスレッド セーフな処理ではありません。すべての列挙処理が終わるまでコレクションロックすることにより、列挙処理でのスレッド セーフ確保できますコレクション対し複数スレッドアクセスして読み取り書き込みを行うことができるようにするには、独自に同期化実装する必要があります

SyncRoot は、ICollection へのアクセス同期するために使用できるオブジェクト返します同期は、すべてのスレッドが、コレクションアクセスする前にオブジェクトロックする場合のみ有効です。C#C++、および Visual BasicSyncRoot プロパティ使用方法次のコード示します

ICollection ic = ...;
lock (ic.SyncRoot) {
   // Access the collection.
}
Dim ic As ICollection = ...
SyncLock ic.SyncRoot
   ' Access the collection.
End SyncLock
ICollection^ ic = ...;
try {
   Monitor::Enter(ic->SyncRoot);
   // Access the collection.
}
finally {
   Monitor::Exit(ic->SyncRoot);
}

このプロパティ値を取得することは、O(1) 操作なります

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

LinkedList.System.Collections.ICollection.SyncRoot プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



LinkedList.System.Collections.ICollection.SyncRoot プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS