マルチスレッド・ルーチン表

マルチスレッド・プログラムで利用可能なルーチンを以下の表に示します。このルーチンに関する詳細は、Microsoft* Developer Network (MSDN) またはプラットフォーム SDK ドキュメントを参照してください。

ルーチン

説明

CloseHandle

開いているオブジェクト・ハンドルを閉じます。

CreateEvent

名前付きまたは名前なしイベント・オブジェクトを作成します。

CreateMutex

名前付きまたは名前なし Mutex オブジェクトを作成します。

CreateProcess

新しいプロセスとそのプライマリー・スレッドを作成します。

CreateSemaphore

名前付きまたは名前なしセマフォー・オブジェクトを作成します。

CreateThread

呼び出し元プロセスのアドレス空間内で実行するスレッドを作成します。

DeleteCriticalSection

所有されていないクリティカル・セクション・オブジェクトが使用しているすべてのリソースを解放します。

DuplicateHandle

オブジェクト・ハンドルを複製します。

EnterCriticalSection

指定されたクリティカル・セクション・オブジェクトの所有権を取得できるまで待機します。

ExitProcess

プロセスとそのすべてのスレッドを終了します。

ExitThread

スレッドを終了します。

GetCurrentProcess

現在のプロセスの疑似ハンドルを返します。

GetCurrentProcessId

呼び出し元プロセスのプロセス識別子を返します。

GetCurrentThread

現在のスレッドの疑似ハンドルを返します。

GetCurrentThreadId

呼び出し元スレッドのスレッド識別子を返します。

GetExitCodeProcess

指定されたプロセスの終了状態を取得します。

GetExitCodeThread

指定されたスレッドの終了状態を取得します。

GetLastError

呼び出し元スレッドの最後のエラーコードを返します。

GetPriorityClass

指定されたプロセスの優先度クラスを返します。

GetThreadPriority

指定されたスレッドの優先度を返します。

InitializeCriticalSection

クリティカル・セクション・オブジェクトを初期化します。

LeaveCriticalSection

指定されたクリティカル・セクション・オブジェクトの所有権を解放します。

OpenEvent

既存の名前付きイベント・オブジェクトのハンドルを返します。

OpenMutex

既存の名前付き Mutex オブジェクトのハンドルを返します。

OpenProcess

既存のプロセス・オブジェクトのハンドルを返します。

OpenSemaphore

既存の名前付きセマフォー・オブジェクトのハンドルを返します。

PulseEvent

単一の操作として、指定されたイベント・オブジェクトの状態を (シグナル状態に) 設定し、適切な数の待機スレッドを解放した後に、状態をリセットします。

ReleaseMutex

指定された Mutex オブジェクトの所有権を解放します。

ReleaseSemaphore

指定されたセマフォー・オブジェクトのカウンターを指定された数だけ増やします。

ResetEvent

指定されたイベント・オブジェクトの状態を非シグナル状態に設定します。

ResumeThread

スレッドの中断カウンターを 1 つ減らします。中断カウンターがゼロになると、スレッドの実行が再開されます。

SetEvent

指定されたイベント・オブジェクトの状態をシグナル状態に設定します。

SetLastError

呼び出し元スレッドの最後のエラーコードを設定します。

SetPriorityClass

指定されたプロセスの優先度クラスを設定します。

SetThreadPriority

指定されたスレッドの優先度を設定します。

SuspendThread

指定されたスレッドを中断します。

TerminateProcess

指定されたプロセスとそのすべてのスレッドを終了します。

TerminateThread

スレッドを終了します。

TlsAlloc

スレッド・ローカル・ストレージ (TLS) のインデックスを割り当てます。

TlsFree

スレッド・ローカル・ストレージ (TLS) のインデックスを解放し、再利用を可能にします。

TlsGetValue

呼び出し元スレッドのスレッド・ローカル・ストレージ (TLS) 内の指定された TLS インデックスにある値を取得します。

TlsSetValue

呼び出し元スレッドのスレッド・ローカル・ストレージ (TLS) 内の指定されたインデックスに値を格納します。

WaitForMultipleObjects

指定されたオブジェクトのいずれかがシグナル状態になったとき、指定されたオブジェクトのすべてがシグナル状態になったとき、またはタイムアウト期間が経過したときに返ります。

WaitForSingleObject

指定されたオブジェクトがシグナル状態になったとき、またはタイムアウト期間が経過したときに返ります。

このセクションで説明されているが上記の表には含まれていない関数を利用するには、USE IFWIN 文を使用する必要があります。