次の方法で共有


VariableDispenser.LockOneForRead(String, Variables) メソッド

定義

一覧に変数を配置してから、その変数を読み取り専用アクセス用にロックします。

public:
 void LockOneForRead(System::String ^ variable, Microsoft::SqlServer::Dts::Runtime::Variables ^ % variables);
public void LockOneForRead (string variable, ref Microsoft.SqlServer.Dts.Runtime.Variables variables);
member this.LockOneForRead : string * Variables -> unit
Public Sub LockOneForRead (variable As String, ByRef variables As Variables)

パラメーター

variable
String

読み取り専用アクセス用にロックする変数の名前です。

variables
Variables

要求された変数を格納する変数コレクションの名前です。

注釈

このメソッドは、単一の変数のみに対して適用されるため、1 回の呼び出しで LockForRead メソッドおよび GetVariables メソッドの作業が組み合わされます。

呼び出しが成功した場合、要求された変数は、パラメーター variables によって指定された変数コレクション内に 1 つのエントリで構成されたコレクションとして返され、この変数は読み取り専用アクセス用にロックされます。 この変数のロックを解除するには、Unlock クラスの Variables メソッドを使用して、変数コレクションを解放します。 メソッドの呼び出しが LockOneForRead 失敗した場合、変数はロックされません。

このメソッドへの呼び出しは、LockForRead への呼び出しを経由して生成されるロックの一覧に影響を与えません。

注意

共に使用される複数の変数に対するロックを取得するときに、このメソッドに対する複数の呼び出しを行うと、デッドロックが発生する可能性があるため、このような操作は行わないようにすることをお勧めします。 一緒に使用されているすべての変数は、LockForRead メソッドまたは LockForWrite メソッドに続けて GetVariables を呼び出すことにより、一緒に要求およびロックする必要があります。

ロックが成功している場合は、Unlock を呼び出してロックを解除できます。

適用対象