Dispatcher.DisableProcessing Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Desativa o processamento da Dispatcher fila.
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
Devoluções
Uma estrutura usada para reativar o processamento do despachante.
Exemplos
O exemplo seguinte mostra como desativar o processamento do despachante e reativar o processamento do despachante. DisableProcessing é chamado numa instrução usando . DisableProcessing devolve uma DispatcherProcessingDisabled estrutura que é usada como objeto a ser descartado quando o bloco de utilização termina. Quando Dispose é chamado à DispatcherProcessingDisabled estrutura, o processamento do despachante é reativado.
// 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
Observações
Desativar o processamento do despachante é um método avançado destinado a eliminar a possibilidade de reentrância não relacionada.
Os efeitos de desabilitar o processamento são os seguintes:
Os bloqueios CLR não bombeiam mensagens internamente.
DispatcherFrame objetos não podem ser empurrados.
O processamento de mensagens não é permitido.
A DispatcherProcessingDisabled estrutura que DisableProcessing retorna quando é chamada pode ser usada para reativar o processamento do despachante. Chamar Dispose a DispatcherProcessingDisabled estrutura reativa o processamento.
DisableProcessing só pode ser chamado no thread ao qual está Dispatcher associado.