DTSReadOnlyCollectionBase.IsSynchronized Property
DTSReadOnlyCollectionBase へのアクセスが同期されるかどうか (スレッドセーフかどうか) を示す値を取得します。
名前空間: Microsoft.SqlServer.Dts.Runtime
アセンブリ: Microsoft.SqlServer.ManagedDTS (microsoft.sqlserver.manageddts.dll 内)
構文
'宣言
Public ReadOnly Property IsSynchronized As Boolean
public bool IsSynchronized { get; }
public:
virtual property bool IsSynchronized {
bool get () sealed;
}
/** @property */
public final boolean get_IsSynchronized ()
public final function get IsSynchronized () : boolean
プロパティ値
DTSReadOnlyCollectionBase へのアクセスが同期される場合 (スレッドセーフの場合) は true、同期されない場合は false です。既定値は false です。
解説
ICollection.IsSynchronized を実装します。コレクションがスレッドセーフの場合には、IsSynchronized プロパティは true を返します。この場合、プログラマがコレクションをスレッドセーフにするために何かをする必要はありません。
このプロパティが false を返す場合は、SyncRoot プロパティによって、C# の lock キーワードで使用するオブジェクトが返されます。詳細については、「ICollection.IsSynchronized」を参照してください。
使用例
ArrayList は、IsSynchronized プロパティを継承して実装する .NET Framework クラスです。次のコード例では、ArrayList を同期し、ArrayList が同期されているかどうかを確認して、同期された ArrayList を使用する方法を示します。
using System;
using System.Collections;
public class SamplesArrayList
{
public static void Main()
{
// Creates and initializes a new ArrayList.
ArrayList myAL = new ArrayList();
myAL.Add( "The" );
myAL.Add( "quick" );
myAL.Add( "brown" );
myAL.Add( "fox" );
// Creates a synchronized wrapper around the ArrayList.
ArrayList mySyncdAL = ArrayList.Synchronized( myAL );
// Displays the sychronization status of both ArrayLists.
Console.WriteLine( "myAL is {0}.", myAL.IsSynchronized ? "synchronized" : "not synchronized" );
Console.WriteLine( "mySyncdAL is {0}.", mySyncdAL.IsSynchronized ? "synchronized" : "not synchronized" );
}
}
Imports System
Imports System.Collections
Public Class SamplesArrayList
Public Shared Sub Main()
' Creates and initializes a new ArrayList.
Dim myAL As ArrayList = New ArrayList()
myAL.Add("The")
myAL.Add("quick")
myAL.Add("brown")
myAL.Add("fox")
' Creates a synchronized wrapper around the ArrayList.
Dim mySyncdAL As ArrayList = ArrayList.Synchronized(myAL)
' Displays the sychronization status of both ArrayLists.
Console.WriteLine("myAL is {0}.", myAL.IsSynchronized ? "synchronized" : "not synchronized")
Console.WriteLine("mySyncdAL is {0}.", mySyncdAL.IsSynchronized ? "synchronized" : "not synchronized")
End Sub
End Class
サンプルの出力 :
myAL is not synchronized.
mySyncdAL is synchronized.
スレッド セーフ
この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォーム
開発プラットフォーム
サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
対象プラットフォーム
サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
参照
関連項目
DTSReadOnlyCollectionBase Class
DTSReadOnlyCollectionBase Members
Microsoft.SqlServer.Dts.Runtime Namespace