Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
ICollection.IsSynchronized Property

Dictionary(Of TKey, TValue).ICollection.IsSynchronized Property

Gets a value indicating whether access to the ICollection is synchronized (thread safe).

Namespace:  System.Collections.Generic
Assemblies:   mscorlib (in mscorlib.dll)
  System.Collections (in System.Collections.dll)

'Declaration
Private ReadOnly Property IsSynchronized As Boolean 
	Implements ICollection.IsSynchronized

Property Value

Type: System.Boolean
true if access to the ICollection is synchronized (thread safe); otherwise, false. In the default implementation of Dictionary(Of TKey, TValue), this property always returns false.

Implements

ICollection.IsSynchronized

Default implementations of collections in the System.Collections.Generic namespace are not synchronized.

Enumerating through a collection is intrinsically not a thread-safe procedure. Even when a collection is synchronized, other threads can still modify the collection, which can cause the enumerator to throw an exception. To guarantee thread safety during enumeration, you can either lock the collection during the entire enumeration or catch the exceptions resulting from changes made by other threads.

The SyncRoot property returns an object that can be used to synchronize access to the ICollection. Synchronization is effective only if all threads lock the object before accessing the collection.

Getting the value of this property is an O(1) operation.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone Silverlight 8.1, Windows Phone Silverlight 8

Portable Class Library

Supported in: Portable Class Library
Show:
© 2015 Microsoft