Windows.System.Threading.Core Namespace

指定したイベントおよびセマフォに対する応答で実行する作業項目を作成します。また、多くの (またはすべての) リソースが割り当てられている状況でも実行機能が保証される必要のある作業項目に、リソースを事前に割り当てます。

メモ  ThreadPool API は、デスクトップおよび Windows ストア アプリでサポートされています。

PreallocatedWorkItem

ThreadPool を使用して作業項目を作成した場合。作業項目の RunAsync が作成され、単一の操作として送信されます。これはほとんどのシナリオで許容されますが、作業項目のリソースを事前に取り除くことが必要な場合があります。

PreallocatedWorkItem クラスは事前に作業項目を構築し、作業項目を "待機中" にしておくことで、必要に応じてスレッド プールに作業項目を提出できます。これは、作業項目を使用する割り当て解除のルーチンを呼び出すなど、作業項目が必要になる前に、アプリケーションが使用できるリソースが完全に割り当てられるような場合に役に立ちます。作業項目が既に割り当てられている場合は、すべてのリソースが既に使用されていたとしても、リソースの割り当て解除のルーチンが呼び出されて PreallocatedWorkItem をスレッド プールに送信できます。

SignalNotifier

Win32 COM オブジェクトによって作成された名前付きイベントやセマフォに応答して、作業項目を待機中にすることが必要な場合があります。SignalNotifier オブジェクトを使用して、名前付きイベントやセマフォへの応答として Windows ランタイム メソッドを実行することができます。これによって、イベントまたはセマフォが名前を持つ場合に、Windows Store アプリケーションの Win32 および COM を使用して送られたシグナルとイベントに応答する Windows ランタイムのコードを記述できるようにします。たとえば、Windows Store のアプリケーションに移植する Win32 コードを操作するために、SignalNotifier を使用できます。

ISignalableNotifier

イベントまたはセマフォの名前がわからない場合がありますが、それでもアプリケーションは応答する必要があります。たとえば、レガシ コード、一部の既知のイベントおよびセマフォでは、名前の代わりに待機可能なハンドルが使用されます。ISignalableNotifier では、待機可能ハンドルに登録する ISignalNotifier オブジェクトを作成できます。

メモ  割り当て済み作業項目は、利用可能なすべてのリソースを使い切る可能性のあるアプリケーション、またはリソースの割り当て解除ルーチンの作業項目を作成する必要があるアプリケーションのみに必要です。シグナル通知は、Windows Store アプリケーションの Win32 および COM を使用する特定のアプリケーションにのみ適用されます。アプリで事前割り当てまたは通知を使用する必要がない場合は、Windows.System.Threading を使用して作業項目を作成します。

メンバー

Windows.System.Threading.Core名前空間 には次の種類のメンバーがあります。

クラス

Windows.System.Threading.Core名前空間 にはこれらのクラスがあります。

クラス説明
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).

 

デリゲート

Windows.System.Threading.Core名前空間 にはこれらのデリゲートがあります。

Delegate説明
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).

 

インターフェイス

Windows.System.Threading.Core名前空間 はこれらのインターフェイスを定義します。

インターフェイス説明
ISignalableNotifier
ISignalHandler
ISignalNotifier

 

要件

最小限サポートされるクライアント

Windows 8

最小限サポートされるサーバー

Windows Server 2012

最小限サポートされる携帯電話

Windows Phone 8

名前空間

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

メタデータ

Windows.winmd

 

 

表示:
© 2014 Microsoft