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 Variablensammlung auf und markiert den Zustand der Variablensammlung als ungültig oder unbekannt.
public:
void Unlock();
public void Unlock();
member this.Unlock : unit -> unit
Public Sub Unlock ()
Beispiele
Das folgende Codebeispiel sperrt die Variablensammlung, wenn GetVariables aufgerufen wird. Das Beispiel prüft dann, ob die Sammlung gesperrt ist, und ruft, falls ja, .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 freizuschalten, die durch die Verwendung der Klasse VariableDispenser gesperrt wurden. Beim VariableDispenser Ausgeben einer Variablensammlung verfolgt sie die Sammlung in einer Liste. Wenn die Aufgabe, die den variablen Dispenser aufgerufen hat, ausgeführt ist, werden alle ausgegebenen Sammlungen automatisch entsperrt. Daher müssen Sie die Unlock Methode nicht aufrufen, wenn automatische Entsperrung für Ihre Zwecke geeignet ist und die automatische Entsperrung nach Abschluss der Aufgabe erfolgte. Es ist jedoch manchmal wünschenswert, Variablen aus Performancegründen so früh wie möglich freizuschalten. Ein expliziter Aufruf dieser Unlock Methode schaltet die Variablen frei.
Die Immobilie Locked gibt einen Wert von an false , um anzuzeigen, dass eine abgegebene Sammlung bereits freigeschaltet wurde. Ein Wert von true zeigt an, dass die Variablensammlung weiterhin gesperrt ist. Ein zweimaliger Aufruf Unlock verursacht einen Fehler; daher müssen Sie in bestimmten Situationen möglicherweise den Wert dieser Eigenschaft überprüfen, bevor Sie entscheiden, ob Sie aufrufen Unlockmöchten.