Variables.Unlock Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Hebt die Sperren der Variablenauflistung auf und kennzeichnet den Status der Variablenauflistung als ungültig oder unbekannt.
public:
void Unlock();
public void Unlock ();
member this.Unlock : unit -> unit
Public Sub Unlock ()
Beispiele
Im folgenden Codebeispiel wird die Variablenauflistung gesperrt, wenn GetVariables sie aufgerufen wird. Im Beispiel wird überprüft, ob die Auflistung gesperrt ist und wenn ja, aufruft Unlock.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SqlServer.SSIS.Sample
{
class Program
{
static void Main(string[] args)
{
Package pkg = new Package();
Variables vars = null;
VariableDispenser variableDispenser = pkg.VariableDispenser;
variableDispenser.LockForRead("System::PackageName");
variableDispenser.LockForRead("System::OfflineMode");
variableDispenser.LockForWrite("System::InteractiveMode");
variableDispenser.GetVariables(ref vars);
// Determine whether the variable collection is locked before unlocking.
Boolean isLocked = vars.Locked;
// Verify the value of vars.Locked. If the lock failed,
// call Reset.
if (isLocked)
{
vars.Unlock();
}
else
{
variableDispenser.Reset();
}
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace Microsoft.SqlServer.SSIS.Sample
Class Program
Shared Sub Main(ByVal args() As String)
Dim pkg As Package = New Package()
Dim vars As Variables = Nothing
Dim variableDispenser As VariableDispenser = pkg.VariableDispenser
variableDispenser.LockForRead("System::PackageName")
variableDispenser.LockForRead("System::OfflineMode")
variableDispenser.LockForWrite("System::InteractiveMode")
variableDispenser.GetVariables( vars)
' Determine whether the variable collection is locked before unlocking.
Dim isLocked As Boolean = vars.Locked
' Verify the value of vars.Locked. If the lock failed,
' call Reset.
If isLocked = True Then
vars.Unlock()
Else
variableDispenser.Reset()
End If
End Sub
End Class
End Namespace
Hinweise
Diese Methode wird verwendet, um Variablen zu entsperren, die mithilfe der VariableDispenser Klasse gesperrt wurden. Wenn VariableDispenser eine Variablensammlung ausgegeben wird, wird die Auflistung in einer Liste nachverfolgt. Wenn die Aufgabe, die als variable Ausgabe bezeichnet wird, die Ausführung beendet, werden alle ausgegebenen Sammlungen automatisch entsperrt. Wenn die automatische Entsperrung für Ihre Zwecke geeignet ist und wenn die automatische Entsperrung beim Abschluss der Aufgabe aufgetreten ist, müssen Sie die Unlock Methode nicht aufrufen. Es ist jedoch manchmal wünschenswert, Variablen so schnell wie möglich aus Leistungsgründen zu entsperren. Ein expliziter Aufruf dieser Unlock Methode entsperrt die Variablen.
Die Locked Eigenschaft gibt einen Wert zurück, der false
angibt, dass eine ausgegebene Auflistung bereits entsperrt wurde. Ein Wert von true
gibt an, dass die Variablenauflistung weiterhin gesperrt ist. Beim Aufrufen Unlock zweimal wird ein Fehler verursacht. Daher müssen Sie in bestimmten Situationen den Wert dieser Eigenschaft überprüfen, bevor Sie entscheiden, ob sie aufrufen Unlocksollen.