次表に,マルチスレッド・プログラムで利用できるルーチンを示します。これらのルーチンの呼び出し構文については,HTMLHelp Viewer で『Platform SDK』を参照してください。
| ルーチン | 説明 |
| CloseHandle | 開いているオブジェクト・ハンドルを閉じます。 |
| CreateEvent | 名前付きのまたは名前を持たないイベント・オブジェクトを作成します。 |
| CreateMutex | 名前付きのまたは名前を持たないミューテックス・オブジェクトを作成します。 |
| CreateProcess | 新しいプロセスとそのプライマリ・スレッドを作成します。 |
| CreateSemaphore | 名前付きのまたは名前を持たないセマフォ・オブジェクトを作成します。 |
| CreateThread | 呼び出し側プロセスのアドレス空間の中で実行されるスレッドを作成します。 |
| DeleteCriticalSection | 所有されていないクリティカル・セクション・オブジェクトが使用しているすべてのリソースを解放します。 |
| DuplicateHandle | オブジェクト・ハンドルをコピーします。 |
| EnterCriticalSection | 指定されたクリティカル・セクション・オブジェクトの所有権が得られるまで待機します。 |
| ExitProcess | プロセスとそのすべてのスレッドを終了させます。 |
| ExitThread | スレッドを終了させます。 |
| GetCurrentProcess | 現在のプロセスの疑似ハンドルを返します。 |
| GetCurrentProcessId | 呼び出し側プロセスのプロセス識別子を返します。 |
| GetCurrentThread | 現在のスレッドの疑似ハンドルを返します。 |
| GetCurrentThreadId | 呼び出し側スレッドのスレッド識別子を返します。 |
| GetExitCodeProcess | 指定されたプロセスの終了状態を取得します。 |
| GetExitCodeThread | 指定されたスレッドの終了状態を取得します。 |
| GetLastError | 呼び出し側スレッドの最後のエラー・コードを返します。 |
| GetPriorityClass | 指定されたプロセスの優先度クラスを返します。 |
| GetThreadPriority | 指定されたスレッドの優先度を返します。 |
| InitializeCriticalSection | クリティカル・セクション・オブジェクトを初期化します。 |
| LeaveCriticalSection | 指定されたクリティカル・セクション・オブジェクトの所有権を解放します。 |
| OpenEvent | 既存の名前付きのイベント・オブジェクトのハンドルを返します。 |
| OpenMutex | 既存の名前付きミューテックス・オブジェクトのハンドルを返します。 |
| OpenProcess | 既存のプロセス・オブジェクトのハンドルを返します。 |
| OpenSemaphore | 既存の名前付きのセマフォ・オブジェクトのハンドルを返します。 |
| PulseEvent | 1 回の操作で,指定されたイベント・オブジェクトを (シグナル状態に) 設定し,適切な数の待機中スレッドを解放した後に,状態をリセットします。 |
| ReleaseMutex | 指定されたミューテックス・オブジェクトの所有権を解放します。 |
| ReleaseSemaphore | 指定されたセマフォ・オブジェクトのカウンターを指定された数だけ増やします。 |
| ResetEvent | 指定されたイベント・オブジェクトの状態を非シグナル状態に設定します。 |
| ResumeThread | スレッドの中断カウンターを1だけ減らします。中断カウンターがゼロになると,スレッドの実行は再開されます。 |
| SetEvent | 指定されたイベント・オブジェクトの状態をシグナル状態に設定します。 |
| SetLastError | 呼び出し側スレッドの最後のエラー・コード値を設定します。 |
| SetPriorityClass | 指定されたプロセスの優先度クラスを設定します。 |
| SetThreadPriority | 指定されたスレッドの優先度を設定します。 |
| SuspendThread | 指定されたスレッドを中断します。 |
| TerminateProcess | 指定されたプロセスとそのすべてのスレッドを終了させます。 |
| TerminateThread | スレッドを終了させます。 |
| TlsAlloc | スレッド・ローカル・ストレージ (TLS) の索引を割り当てます。 |
| TlsFree | スレッド・ローカル・ストレージ (TLS) の索引を解放し,再利用が可能なようにします。 |
| TlsGetValue | 呼び出し側スレッドの指定されたスレッド・ローカル・ストレージ (TLS) の索引の TLS スロットにある値を取得します。 |
| TlsSetValue | 呼び出し側スレッドの指定されたスレッド・ローカル・ストレージ (TLS) の索引の TLS スロットに値を格納します。 |
| WaitForMultipleObjects | 指定されたオブジェクトの 1 つまたはすべてがシグナル状態になるか,タイムアウト期間が経過した時点で返ります。 |
| WaitForSingleObject | 指定されたオブジェクトがシグナル状態になるか,タイムアウト期間が経過した時点で返ります。 |
この章で触れているが上の表には含まれていない関数は,USE DFWIN 文を通してしか利用できません。