X509ExtensionCollection.SyncRoot Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá objekt, který můžete použít k synchronizaci přístupu k objektu X509ExtensionCollection .
public:
property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object
Hodnota vlastnosti
Objekt, který můžete použít k synchronizaci přístupu k objektu X509ExtensionCollection .
Implementuje
Poznámky
Tato vlastnost implementuje ICollection rozhraní . Třídy rozhraní .NET Framework založené na Array poskytují vlastní synchronizovanou verzi kolekce pomocí SyncRoot vlastnosti . Třídy, které používají pole, mohou také implementovat vlastní synchronizaci pomocí SyncRoot vlastnosti . Synchronizační kód musí provádět operace s SyncRoot vlastností kolekce, nikoli přímo s kolekcí. Tím zajistíte správnou funkci kolekcí, které jsou odvozeny z jiných objektů. Konkrétně udržuje správnou synchronizaci s jinými vlákny, která mohou současně upravovat kolekci. Všimněte si, že některé implementace SyncRoot můžou vrátit samotné pole.
Výčet prostřednictvím kolekce nemůže být procedurou bezpečnou pro přístup z více vláken. I v případě, že je kolekce synchronizována, mohou ostatní vlákna kolekci stále upravovat, což způsobí, že enumerátor vyvolá výjimku. K zaručení bezpečnosti přístupu z více vláken můžete buďto zamknout kolekci na celou dobu práce s výčtem, nebo zachycovat výjimky vzniklé v důsledku změn prováděných ostatními vlákny.