SetThreadIdealProcessorEx 関数 (processthreadsapi.h)
指定したスレッドの理想的なプロセッサを設定し、必要に応じて、以前の理想的なプロセッサを取得します。
構文
BOOL SetThreadIdealProcessorEx(
[in] HANDLE hThread,
[in] PPROCESSOR_NUMBER lpIdealProcessor,
[out, optional] PPROCESSOR_NUMBER lpPreviousIdealProcessor
);
パラメーター
[in] hThread
理想的なプロセッサを設定するスレッドへのハンドル。 このハンドルは、THREAD_SET_INFORMATIONアクセス権を使用して作成されている必要があります。 詳細については、「 スレッド セキュリティとアクセス権」を参照してください。
[in] lpIdealProcessor
目的の 理想的なプロセッサ のプロセッサ番号を指定するPROCESSOR_NUMBER構造体へのポインター。
[out, optional] lpPreviousIdealProcessor
以前の理想的なプロセッサを受け取る PROCESSOR_NUMBER 構造体へのポインター。 このパラメーターは、 lpIdealProcessor パラメーターと同じメモリ位置を指すことができます。 以前の理想的なプロセッサが必要ない場合、このパラメーターは NULL にすることができます。
戻り値
関数が成功すると、0 以外の値が返されます。
関数が失敗すると、0 が返されます。 拡張エラー情報を取得するには、 GetLastError を使用します。
注釈
スレッドの理想的なプロセッサを指定すると、スレッドの優先プロセッサに関するヒントがスケジューラに提供されます。 スケジューラは、可能な場合はスレッドの理想的なプロセッサでスレッドを実行します。
Windows 11 および Windows Server 2022 以降では、プロセッサ数が 64 を超えるシステムでは、プロセスとスレッドのアフィニティは、既定ですべてのプロセッサ グループにわたって、システム内のすべてのプロセッサにまたがっています。 SetThreadIdealProcessorEx は、優先プロセッサを設定する場合にも、スレッドのプライマリ グループを優先プロセッサのグループに設定します。
この関数を使用するアプリケーションをコンパイルするには、_WIN32_WINNT >= 0x0601を設定します。 詳細については、「 Windows ヘッダーの使用」を参照してください。
Windows Phone 8.1: この関数は、Windows Phone 8.1 以降のWindows Phone ストア アプリでサポートされています。
Windows 8.1とWindows Server 2012 R2: この関数は、Windows 8.1、Windows Server 2012 R2 以降の Windows ストア アプリでサポートされています。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | processthreadsapi.h (Windows.h を含む) |
Library | Kernel32.lib;Windows Phone 8.1 の WindowsPhoneCore.lib |
[DLL] | Kernel32.dll;Windows Phone 8.1 での KernelBase.dll |