CoreDispatcher Classe

Définition

Fournit le répartiteur de messages d’événement principal Windows Runtime. Les instances de ce type sont responsables du traitement des messages de fenêtre et de la distribution des événements au client.

C#
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class CoreDispatcher
Héritage
Object CoreDispatcher
Attributs
Implémente

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v1.0)

Remarques

Les instances de ce type peuvent être obtenues à partir de la propriété CoreWindow.Dispatcher. Le instance CoreWindow actuel peut être obtenu en appelant CoreWindow.GetForCurrentThread.

C++/WinRT
// App.cpp
...
// An implementation of IFrameworkView::Run.
void Run()
{
    CoreWindow window{ CoreWindow::GetForCurrentThread() };
    window.Activate();

    CoreDispatcher dispatcher{ window.Dispatcher() };
    dispatcher.ProcessEvents(CoreProcessEventsOption::ProcessUntilQuit);
}

// The CoreApplication::Run call indirectly calls the App::Run function above.
int __stdcall wWinMain(HINSTANCE, HINSTANCE, PWSTR, int)
{
    CoreApplication::Run(App());
}

Propriétés

CurrentPriority

Obtient et définit la priorité de la tâche actuelle.

HasThreadAccess

Obtient une valeur qui spécifie si le répartiteur d’événements fourni par cette instance de CoreWindow a ou non accès au thread actuel.

Méthodes

ProcessEvents(CoreProcessEventsOption)

Démarre le répartiteur en traitant la file d’attente d’événements d’entrée pour cette instance de CoreWindow.

RunAsync(CoreDispatcherPriority, DispatchedHandler)

Planifie le rappel fourni sur le thread d’interface utilisateur à partir d’un thread de travail et retourne les résultats de manière asynchrone.

RunIdleAsync(IdleDispatchedHandler)

Planifie un rappel sur le thread d’interface utilisateur à partir d’un thread de travail à priorité inactive et retourne les résultats de façon asynchrone.

ShouldYield()

Demande si l’appelant doit produire s’il y a des éléments dans la file d’attente de tâches dont la priorité est supérieure à celle de la tâche actuelle.

ShouldYield(CoreDispatcherPriority)

Demande si l’appelant doit produire s’il y a des éléments dans la file d’attente de tâches de la priorité spécifiée ou supérieure.

StopProcessEvents()

Empêche le répartiteur de traiter tous les événements mis en file d’attente.

TryRunAsync(CoreDispatcherPriority, DispatchedHandler)

Tente de planifier le rappel spécifié sur le thread d’interface utilisateur à partir d’un thread de travail et retourne les résultats de manière asynchrone.

TryRunIdleAsync(IdleDispatchedHandler)

Tente de planifier un rappel sur le thread d’interface utilisateur à partir d’un thread de travail à priorité inactive et retourne les résultats de manière asynchrone.

Événements

AcceleratorKeyActivated

Déclenché lorsqu’une touche d’accélérateur est activée (enfoncée ou maintenue).

S’applique à

Produit Versions
WinRT Build 10240, Build 10586, Build 14383, Build 15063, Build 16299, Build 17134, Build 17763, Build 18362, Build 19041, Build 20348, Build 22000, Build 22621, Build 26100