Udostępnij za pośrednictwem


Właściwość ScriptTask.SuspendRequired

Pobiera lub ustawia wartość logiczna wskazuje, czy zadanie Wstrzymaj wykonywanie kodu, gdy zadanie napotka punkt przerwania.Ta wartość jest ustawiana przez uruchomienie -czas aparat zadań i pojemników po napotkaniu punktu punkt przerwania.

Przestrzeń nazw:  Microsoft.SqlServer.Dts.Tasks.ScriptTask
Zestaw:  Microsoft.SqlServer.ScriptTask (w Microsoft.SqlServer.ScriptTask.dll)

Składnia

'Deklaracja
Public Property SuspendRequired As Boolean
    Get
    Set
'Użycie
Dim instance As ScriptTask
Dim value As Boolean

value = instance.SuspendRequired

instance.SuspendRequired = value
public bool SuspendRequired { get; set; }
public:
virtual property bool SuspendRequired {
    bool get () sealed;
    void set (bool value) sealed;
}
abstract SuspendRequired : bool with get, set
override SuspendRequired : bool with get, set
final function get SuspendRequired () : boolean
final function set SuspendRequired (value : boolean)

Wartość właściwości

Typ: System.Boolean
TRUE , jeśli zadanie zawiesza wykonywanie po napotkaniu punktu punkt przerwania; w przeciwnym razie false.

Implementacje

IDTSSuspend.SuspendRequired

Uwagi

Ta właściwość nie jest zestaw w kodzie.Właściwość zestaw w czasie wykonywania zadań i pojemników po napotkaniu punktu punkt przerwania.

Jednak jeśli piszesz wielowątkowe zadanie niestandardowe udostępnia punkty przerwania, należy podać kod metoda dziedziczone z IDTSSuspend klasy dla obiektów wielowątkowych.Jeśli zadanie jest pojedynczym wątku, co oznacza, że wykonanie Execute w niestandardowe zadania nie można uruchomić nowych wątków, nie trzeba zaimplementować interfejs.Aby uzyskać więcej informacji na temat pisania niestandardowych zadań, zobacz Opracowywania niestandardowego zadania.

Przykłady

Poniższy przykład kodu pokazuje jak SuspendRequired właściwość niestandardowych zadań.

public bool SuspendRequired 
{
     get
    { 
        // m_suspendRequired is a Private integer declared in the custom task. 
        return m_suspendRequired != 0; 
    }

    set
    {
    // This lock is also taken by Suspend().  Because it is possible for the package to be 
    // suspended and resumed in quick succession, this property "set" might happen 
    // before the actual Suspend() call.  Without the lock, the Suspend() might reset 
    // the canExecute event after we set it to abort the suspension. 
         lock (this) 
    {
        Interlocked.Exchange(ref m_suspendRequired, value ? 1 : 0); 
            if (!value) 
                ResumeExecution(); 
    }
}
Public ReadOnly Property SuspendRequired() As Boolean
    Get 
        ' m_suspendRequired is a Private integer declared in the custom task. 
        Return m_suspendRequired <> 0
     End Get

Public WriteOnly Property SuspendRequired() As Boolean
    Set (ByVal Value As Boolean) 
        ' This lock is also taken by Suspend().  Because it is possible for the package to be 
        ' suspended and resumed in quick succession, this property "put" might happen 
       ' before the actual Suspend() call.  Without the lock, the Suspend() might reset
       ' the canExecute event after we set it to abort the suspension. 
         lock (Me)
         {
               Interlocked.Exchange(m_suspendRequired, value ? 1 : 0) 
                     If Not value Then
                       ResumeExecution()
                     End If
             }
         End Set
End Property