Windows.System.Threading.Core Namespace

Erstellt Arbeitsaufgaben, die als Reaktion auf benannte Ereignisse und Semaphore ausgeführt werden. Teilt auch vorab Ressourcen für Arbeitsaufgaben zu, deren Möglichkeit der Ausführung garantiert sein muss, auch bei hoher (oder vollständiger) Ressourcenzuordnung zu.

Hinweis  Die ThreadPool-API wird für Desktop-Apps und Windows Store-Apps unterstützt.

PreallocatedWorkItem

Wenn Arbeitsaufgaben mit ThreadPool.RunAsync erstellt werden, wird die Arbeitsaufgabe als einzelner Vorgang erstellt und gesendet. Dies ist für die meisten Szenarien akzeptabel. Mitunter ist es jedoch erforderlich, für eine Arbeitsaufgabe Ressourcen im Voraus zu reservieren.

Die PreallocatedWorkItem-Klasse erstellt vorzeitig eine Arbeitsaufgabe und versetzt die Arbeitsaufgabe in den Standbymodus, damit sie an den Threadpool gesendet werden kann, wenn sie benötigt wird. Dies ist in den Fällen nützlich, in denen die für Ihre App verfügbaren Ressourcen vollständig zugeordnet sind, bevor die Arbeitsaufgabe benötigt wird – beispielsweise der Aufruf einer Freigaberoutine, die eine Arbeitsaufgabe verwendet. Wenn eine Arbeitsaufgabe bereits zugeordnet wurde, kann die Ressourcenfreigabenroutine dennoch aufgerufen werden und PreallocatedWorkItem kann an den Threadpool gesendet werden, auch wenn alle Ressourcen bereits verwendet werden.

SignalNotifier

Manchmal müssen Arbeitsaufgaben als Reaktion auf benannte Semaphore oder Ereignisse, die von Win32-COM-Objekten erstellt wurden, in die Warteschlange gestellt werden. Sie können eine Windows-Runtime-Methode als Reaktion auf ein benanntes Ereignis oder ein Semaphor mithilfe eines SignalNotifier-Objekts ausführen. Hiermit können Sie Windows-Runtime-Code schreiben, der auf die Ereignisse und Signale reagiert, die mithilfe von Win32 und COM für Windows Store-Apps gesendet werden, sofern das Ereignis oder das Semaphor einen Namen hat. Beispielsweise kann SignalNotifier verwendet werden, um mit Win32-Code zu arbeiten, der zu einer Windows Store-App im Metro-Stil portiert wird.

ISignalableNotifier

Gelegentlich ist es nicht möglich, den Namen eines Ereignisses oder Semaphors zu kennen, die App muss jedoch trotzdem darauf antworten. Legacycode beispielsweise und einige bekannte Ereignisse und Semaphore nutzen immer noch Waitable-Handles anstelle von Namen. ISignalableNotifier ermöglicht es Ihnen, ISignalNotifier-Objekte zu erstellen, die mit waitable-Handles registriert werden.

Hinweis  Vorher zugeteilte Arbeitsaufgaben werden nur für Apps benötigt, die möglicherweise alle verfügbaren Ressourcen aufbrauchen, oder die Arbeitsaufgaben für Ressourcenfreigabenroutinen erstellen müssen. Signalbenachrichtigungen sind nur für bestimmte Apps gültig, die Win32 und COM für Windows Store-Apps verwenden. Wenn Sie keine Vorabzuordnung oder Signalisierung in der App verwenden müssen, erstellen Sie Arbeitsaufgaben, indem Sie Windows.System.Threading verwenden.

Member

Windows.System.Threading.CoreNamespace hat diese Membertypen:

Klassen

Windows.System.Threading.CoreNamespace hat diese Klassen.

KlasseBeschreibung
PreallocatedWorkItem A preallocated work item is constructed in advance of its submission to the thread pool, ensuring that the work item is constructed so that it can be submitted to the thread pool when necessary. For example, a PreallocatedWorkItem can be created in case it is needed for a resource deallocation routine, since the resource deallocation routine may be called in circumstances when not enough resources would be available to create the work item.
SignalNotifier Runs a method when an event or semaphore is signaled. A timeout value can also be specified, causing the delegate to run after the time span has elapsed if the named event does not occur (or if the semaphore does not reach a signaled state).

 

Delegaten

Windows.System.Threading.CoreNamespace hat diese Delegaten.

DelegatBeschreibung
SignalHandler Represents a method that is called when a signal notifier's attached event or semaphore is signaled, or when the optional timeout value has elapsed (whichever comes first).

 

Schnittstellen

Windows.System.Threading.CoreNamespace definiert diese Schnittstellen.

SchnittstelleBeschreibung
ISignalableNotifier
ISignalHandler
ISignalNotifier

 

Anforderungen

Mindestens unterstützter Client

Windows 8

Mindestens unterstützter Server

Windows Server 2012

Mindestens unterstütztes Telefon

Windows Phone 8

Namespace

Windows.System.Threading.Core
Windows::System::Threading::Core [C++]

Metadaten

Windows.winmd

 

 

Anzeigen:
© 2015 Microsoft