Freigeben über


CollectionBase.System.Collections.ICollection.IsSynchronized-Eigenschaft

Hinweis: Dieser Namespace oder Member bzw. diese Klasse wird nur von .NET Framework, Version 1.1, unterstützt.

Ruft einen Wert ab, der angibt, ob der Zugriff auf CollectionBase synchronisiert (threadsicher) ist.

Private ReadOnly Property IsSynchronized As Boolean Implements _   ICollection.IsSynchronized
[C#]
bool ICollection.IsSynchronized {get;}
[C++]
private: __property bool
   System::Collections::ICollection::get_IsSynchronized();
[JScript]
private function get ICollection.IsSynchronized() : Boolean;

Eigenschaftenwert

true, wenn der Zugriff auf CollectionBase synchronisiert (threadsicher) ist, andernfalls false. Der Standardwert ist false.

Implementiert

ICollection.IsSynchronized

Hinweise

Eine CollectionBase-Instanz ist nicht synchronisiert. Abgeleitete Klassen können mit Hilfe der SyncRoot-Eigenschaft eine synchronisierte Version von CollectionBase bereitstellen.

Die Enumeration einer Auflistung ist systemintern keine threadsichere Prozedur. Auch wenn eine Auflistung synchronisiert ist, besteht die Möglichkeit, dass weitere Threads die Auflistung verändern. Wenn dies der Fall ist, löst der Enumerator eine Ausnahme aus. Um während der Enumeration Threadsicherheit zu gewährleisten, können Sie entweder die Auflistung während der gesamten Enumeration sperren, oder Sie können die durch andere Threads aufgrund von Änderungen ausgelösten Ausnahmen abfangen.

[Visual Basic, C#] Das folgende Codebeispiel veranschaulicht, wie die Auflistung mit Hilfe von SyncRoot während der gesamten Enumeration gesperrt wird:

 
CollectionBase myCollection = new CollectionBase();
 lock( myCollection.SyncRoot ) {
 foreach ( Object item in myCollection ) {
 // Insert your code here.
 }
}
[Visual Basic] 
Dim myCollection As New CollectionBase()
Dim item As Object
SyncLock myCollection.SyncRoot
 For Each item In myCollection
 ' Insert your code here.
 Next item
End SyncLock

Anforderungen

Plattformen: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003-Familie

Siehe auch

CollectionBase-Klasse | CollectionBase-Member | System.Collections-Namespace | SyncRoot