X509ExtensionCollection.SyncRoot 属性

定义

获取一个对象,该对象可用于同步对 X509ExtensionCollection 对象的访问。

public:
 property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object

属性值

一个对象,它可用于同步对 X509ExtensionCollection 对象的访问。

实现

注解

此属性实现 ICollection 接口。 基于Array.NET Framework类使用 SyncRoot 属性提供其自己的集合的同步版本。 使用数组的类还可以使用 SyncRoot 属性实现自己的同步。 同步代码必须对集合的 SyncRoot 属性执行操作,而不是直接对集合执行操作。 这样可确保对从其他对象派生的集合正确地执行操作。 具体而言,它与可能同时修改集合的其他线程保持正确的同步。 请注意, 的 SyncRoot 一些实现可能会返回数组本身。

枚举整个集合本质上不是一个线程安全的过程。 即使集合已同步,其他线程仍可修改集合,从而导致枚举器引发异常。 若要确保枚举过程中的线程安全性,可以在整个枚举期间锁定集合,或者捕获由其他线程进行的更改所导致的异常。

适用于