Dispatcher.DisableProcessing Metodo

Definizione

Disabilita l'elaborazione della coda di Dispatcher.Disables processing of the Dispatcher queue.

public:
 System::Windows::Threading::DispatcherProcessingDisabled DisableProcessing();
public System.Windows.Threading.DispatcherProcessingDisabled DisableProcessing ();
member this.DisableProcessing : unit -> System.Windows.Threading.DispatcherProcessingDisabled
Public Function DisableProcessing () As DispatcherProcessingDisabled

Restituisce

Struttura utilizzata per attivare nuovamente l'elaborazione del dispatcher.A structure used to re-enable dispatcher processing.

Esempi

Nell'esempio seguente viene illustrato come disabilitare l'elaborazione del dispatcher e abilitare nuovamente l'elaborazione del dispatcher.The following example shows how to disable dispatcher processing and re-enable dispatcher processing. DisableProcessingviene chiamato in un'istruzione using .DisableProcessing is called in a using statement. DisableProcessingRestituisce una DispatcherProcessingDisabled struttura utilizzata come oggetto da eliminare al termine del blocco using .DisableProcessing returns a DispatcherProcessingDisabled structure that is used as the object to be disposed when the using block finishes. Quando Dispose viene chiamato DispatcherProcessingDisabled sulla struttura, l'elaborazione del dispatcher viene riabilitata.When Dispose is called on the DispatcherProcessingDisabled structure, dispatcher processing is re-enabled.

// The Dispose() method is called at the end of the using statement.
// Calling Dispose on the DispatcherProcessingDisabled structure, 
// which is returned from the call to DisableProcessing, will
// re-enalbe Dispatcher processing.
using (Dispatcher.DisableProcessing())
{
    // Do work while the dispatcher processing is disabled.
    Thread.Sleep(2000);
}
' The Dispose() method is called at the end of the using statement.
' Calling Dispose on the DispatcherProcessingDisabled structure, 
' which is returned from the call to DisableProcessing, will
' re-enable Dispatcher processing.
Using Dispatcher.DisableProcessing()
    ' Do work while the dispatcher processing is disabled.
    Thread.Sleep(2000)
End Using

Commenti

La disabilitazione dell'elaborazione del dispatcher è un metodo avanzato progettato per eliminare la possibilità di rientranza non correlata.Disabling dispatcher processing is an advanced method that is intended to eliminate the chance of unrelated reentrancy.

Gli effetti della disabilitazione dell'elaborazione sono i seguenti:The effects of disabling processing are as follows:

  • I blocchi CLR non pompano internamente i messaggi.CLR locks will not pump messages internally.

  • DispatcherFramenon è consentito eseguire il push degli oggetti.DispatcherFrame objects are not allowed to be pushed.

  • L'elaborazione dei messaggi non è consentita.Message processing is not permitted.

La DispatcherProcessingDisabled struttura che DisableProcessing restituisce quando viene chiamata può essere utilizzata per abilitare nuovamente l'elaborazione del dispatcher.The DispatcherProcessingDisabled structure that DisableProcessing returns when it is called can be used to re-enable dispatcher processing. La Dispose chiamata di DispatcherProcessingDisabled sulla struttura Abilita nuovamente l'elaborazione.Calling Dispose on the DispatcherProcessingDisabled structure re-enables processing.

DisableProcessingpuò essere chiamato solo sul thread al Dispatcher quale è associato.DisableProcessing can only be called on the thread the Dispatcher is associated with.

Si applica a