观察
的定义时 ICollection extends IEnumerable. It provides size and synchronization members in addition to enumeration.
这里的同步是否代表集合的同步,当它被共享时
通过多个线程?。用简单的例子解释我如何实际使用“ICollection.IsSynchronized Property
”。
感谢。
答案 0 :(得分:1)
如果IsSynchronized
为真,则该集合应该是线程安全的。但是,您仍然可能必须使用锁定多个列表操作(例如在插入之前查找和索引或其他),在这种情况下,您可以使用SyncRoot
属性。
但请注意,两个成员仅存在于非通用ICollection
接口中。较新的(.NET 2)ICollection<T>
接口不提供它们,坦率地说,通常你会锁定自己而不是使用同步列表。