Freigeben über


DispatcherQueue.TryEnqueue Methode

Definition

Überlädt

TryEnqueue(DispatcherQueueHandler)

Fügt der DispatcherQueue eine Aufgabe hinzu, die in dem Thread ausgeführt wird, der der DispatcherQueue zugeordnet ist.

TryEnqueue(DispatcherQueuePriority, DispatcherQueueHandler)

Fügt der DispatcherQueue eine Aufgabe hinzu, die in dem Thread ausgeführt wird, der der DispatcherQueue zugeordnet ist.

TryEnqueue(DispatcherQueueHandler)

Fügt der DispatcherQueue eine Aufgabe hinzu, die in dem Thread ausgeführt wird, der der DispatcherQueue zugeordnet ist.

public:
 virtual bool TryEnqueue(DispatcherQueueHandler ^ callback) = TryEnqueue;
/// [Windows.Foundation.Metadata.Overload("TryEnqueue")]
bool TryEnqueue(DispatcherQueueHandler const& callback);
[Windows.Foundation.Metadata.Overload("TryEnqueue")]
public bool TryEnqueue(DispatcherQueueHandler callback);
function tryEnqueue(callback)
Public Function TryEnqueue (callback As DispatcherQueueHandler) As Boolean

Parameter

callback
DispatcherQueueHandler

Die auszuführende Aufgabe.

Gibt zurück

Boolean

bool

True gibt an, dass die Aufgabe der Warteschlange hinzugefügt wurde. false, andernfalls.

Attribute

Beispiele

// Create a new thread and initialize a DispatcherQueueController
// and run a DispatcherQueue event loop on it.

_queueController =
    DispatcherQueueController.CreateOnDedicatedThread();
_queue = _queueController.DispatcherQueue;

// This is the first TryEnqueue() after creating the DispatcherQueue
// The callback is guaranteed to be invoked first despite Priority on the
// newly created thread.

bool isQueued = _queue.TryEnqueue(
        () =>
        {
            // task to perform on another thread.
        });

Hinweise

Die Aufgabe wird mit normaler Priorität in die Warteschlange gestellt. Die Warteschlange ruft den Rückruf seriell und in prioritätsmäßiger Reihenfolge auf.

Nachdem ShutdownQueueAsync() aufgerufen wurde, wird die Warteschlange keine neuen Aufgaben in die Warteschlange stellen, und diese Methode gibt false zurück.

Gilt für:

TryEnqueue(DispatcherQueuePriority, DispatcherQueueHandler)

Fügt der DispatcherQueue eine Aufgabe hinzu, die in dem Thread ausgeführt wird, der der DispatcherQueue zugeordnet ist.

public:
 virtual bool TryEnqueue(DispatcherQueuePriority priority, DispatcherQueueHandler ^ callback) = TryEnqueue;
/// [Windows.Foundation.Metadata.Overload("TryEnqueueWithPriority")]
bool TryEnqueue(DispatcherQueuePriority const& priority, DispatcherQueueHandler const& callback);
[Windows.Foundation.Metadata.Overload("TryEnqueueWithPriority")]
public bool TryEnqueue(DispatcherQueuePriority priority, DispatcherQueueHandler callback);
function tryEnqueue(priority, callback)
Public Function TryEnqueue (priority As DispatcherQueuePriority, callback As DispatcherQueueHandler) As Boolean

Parameter

priority
DispatcherQueuePriority

Die Priorität der Aufgabe, z. B. Niedrig, Normal oder Hoch.

callback
DispatcherQueueHandler

Ein Delegat für die auszuführende Aufgabe.

Gibt zurück

Boolean

bool

True gibt an, dass die Aufgabe der Warteschlange hinzugefügt wurde. false, andernfalls.

Attribute

Beispiele

// Create a new thread and initialize a DispatcherQueueController
// and run a DispatcherQueue event loop on it.

_queueController =
    DispatcherQueueController.CreateOnDedicatedThread();
_queue = _queueController.DispatcherQueue;

// This is the first TryEnqueue() after creating the DispatcherQueue. The
// first TryEnqueue task is guaranteed //to be invoked first on the new
// thread, regardless of what priority it was enqueued at.


bool isQueued = _queue.TryEnqueue(Windows.System.DispatcherQueuePriority.High,
        () =>
        {
            // task to perform on another thread.
        });

Hinweise

Die Warteschlange ruft den Rückruf seriell und in prioritätsmäßiger Reihenfolge auf.

Nachdem ShutdownQueueAsync() aufgerufen wurde, wird die Warteschlange keine neuen Aufgaben in die Warteschlange stellen, und diese Methode gibt false zurück.

Gilt für: