Aracılığıyla paylaş


DTSReadOnlyCollectionBase.SyncRoot Özelliği

Erişimi eşitlemek için kullanılan bir nesneyi alır DTSReadOnlyCollectionBase.

Ad Alanı:  Microsoft.SqlServer.Dts.Runtime
Derleme:  Microsoft.SqlServer.ManagedDTS (Microsoft.SqlServer.ManagedDTS içinde.dll)

Sözdizimi

'Bildirim
Public ReadOnly Property SyncRoot As Object
    Get
'Kullanım
Dim instance As DTSReadOnlyCollectionBase
Dim value As Object

value = instance.SyncRoot
public Object SyncRoot { get; }
public:
virtual property Object^ SyncRoot {
    Object^ get () sealed;
}
abstract SyncRoot : Object
override SyncRoot : Object
final function get SyncRoot () : Object

Özellik Değeri

Tür: System.Object
Erişimi eşitlemek için kullanılan bir nesne DTSReadOnlyCollectionBase.

Uygulamalar

ICollection.SyncRoot

Açıklamalar

Implements ICollection.IsSynchronized.Özel bir oluşturuyorsanız, koleksiyon ve deriving dan DTSReadOnlyCollectionBase, eşitlenmiş kendi sürüm sağlayabilir koleksiyon kullanarak SyncRoot özellik.Eşitleme kod üzerinde işlemleri gerçekleştirmelisiniz SyncRoot , koleksiyon, doğrudan koleksiyonu.Bu diğer nesnelerden türetilen koleksiyonları düzgün çalışmasını sağlar.Özellikle, nesneyi aynı anda değişiklik başka bir iş parçacığı ile uygun eşitleme korur.

Numaralandırma arasında bir koleksiyon bir iş parçacığı-safe yordam değil NTFS'nin.Diğer iş bile ne zaman bir koleksiyon eşitlenir, neden olan bir özel durum numaralayıcı koleksiyonu, yine de değiştirebilir.Numaralandırma sırasında iş parçacığı güvenliği garanti ya da kilit için koleksiyon sırasında tüm numaralandırma veya değişikliklerinden kaynaklanan özel durumları diğer iş parçacıkları tarafından yapılan catch.Daha fazla bilgi için, bkz. ICollection.IsSynchronized.

Örnekler

Aşağıdaki kod örneği gösterir nasıl kilit bir ArrayList koleksiyonunu kullanarak SyncRoot sırasında numaralandırma.

using System;
using System.Collections;

ArrayList myCollection = new ArrayList();
lock( myCollection.SyncRoot ) 
foreach ( Object item in myCollection ) 
{
    // Insert your code here.
}
Imports System
Imports System.Collections

Dim myCollection As ArrayList =  New ArrayList() 

lock(myCollection.SyncRoot)
For Each item In myCollection
    ' Insert your code here.
Next