DeleteUmsThreadContext 関数 (winbase.h)

指定したユーザー モード スケジューリング (UMS) スレッド コンテキストを削除します。 スレッドは終了する必要があります。

警告

Windows 11時点では、ユーザー モードのスケジュール設定はサポートされていません。 すべての呼び出しがエラー ERROR_NOT_SUPPORTEDで失敗します。

構文

BOOL DeleteUmsThreadContext(
  [in] PUMS_CONTEXT UmsThread
);

パラメーター

[in] UmsThread

削除する UMS スレッド コンテキストへのポインター。 CreateUmsThreadContext 関数は、このポインターを提供します。

戻り値

関数が成功すると、0 以外の値が返されます。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

関連付けられたスレッドが終了するまで、UMS スレッド コンテキストを削除することはできません。

UMS ワーカー スレッドの実行が完了すると (たとえば、スレッド エントリ ポイント関数から戻るなど)、システムはスレッドを終了し、スレッドの UMS スレッド コンテキストで終了状態を設定し、UMS スレッド コンテキストを関連付けられた完了リストにキューに入れます。

UMS スレッドが既に終了しているため、UMS スレッドを実行しようとすると失敗します。

スレッドの終了状態をチェックするには、アプリケーションのスケジューラで、UmsIsThreadTerminated 情報クラスを使用して QueryUmsThreadInformation を呼び出す必要があります。

要件

   
サポートされている最小のクライアント Windows 7 (64 ビットのみ) [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll
API セット api-ms-win-core-ums-l1-1-0 (Windows 7 で導入)

関連項目

CreateUmsThreadContext

QueryUmsThreadInformation