カテゴリー
Wiki内検索
*
最近更新したページ
最新コメント
win32/guitest by stunning seo guys
FrontPage by stunning seo guys
SWIG by awesome things!
Win32/Console by stunning seo guys
FrontPage by awesome things!
Win32SDK_ICM by stunning seo guys
Win32SDK_MM by check it out
Win32SDK_process by stunning seo guys
VisualuRuby by stunning seo guys

Win32SDK_process2

Win32SDK

DLL、プロセスおよびスレッド2








同期/非同期


同期/非同期の関数には、次のものがあります。

MSDN
関数説明
CancelWaitableTimer 指定した“待機可能”タイマをアクティブでない状態に設定します。
ChangeTimerQueueTimer CreateTimerQueueTimer 関数で作成したタイマキュータイマを更新します。
CreateEvent 名前付きまたは名前なしのイベントオブジェクトを作成または開きます。
CreateMutex 名前付きまたは名前なしのミューテックス (mutually exclusive;相互排他) オブジェクトを作成または開きます。
CreateSemaphore 名前付きまたは名前なしのセマフォオブジェクトを作成または開きます。
CreateTimerQueue タイマのキューを作成します。タイマキュータイマは、指定した時間にコールバック関数を呼び出すための軽量のオブジェクトです。
CreateTimerQueueTimer タイマキュータイマを作成します。このタイマは、指定した時間が経過するとシグナル状態になります。
CreateWaitableTimer “待機可能”タイマオブジェクトを作成します。
DeleteCriticalSection 所有されていないクリティカルセクションオブジェクトを指定し、そのオブジェクトが使っているすべてのリソースを解放します。
DeleteTimerQueueEx タイマキューを削除します。キューに残っている未処理のタイマは、取り消され、削除されます。
DeleteTimerQueueTimer タイマキュータイマを取り消します。
EnterCriticalSection 指定されたクリティカルセクションオブジェクトの所有権を取得するまで待機します。
GetOverlappedResult 指定されたファイル、名前付きパイプ、通信デバイスに関するオーバーラップ (非同期) 操作の結果を返します。
InitializeCriticalSection 指定されたクリティカルセクションオブジェクトを初期化します。
InitializeCriticalSectionAndSpinCount クリティカルセクションオブジェクトを初期化し、クリティカルセクションのスピンカウントを設定します。
InterlockedCompareExchange パラメータ Destination と Comperand で指定した値の原子比較を実行し、比較結果に基づいて値を入れ替えます。
InterlockedCompareExchangePointer Destination パラメータと Comperand パラメータで指定した値を比較します。比較結果に従って 2 つの値を入れ替えます。
InterlockedDecrement 指定された変数の値をデクリメントし (1 つ減らします)、その結果得られた値をチェックします。
InterlockedExchange 指定された 1 個の変数の内容ともう 1 つの値の交換を一括して行います。
InterlockedExchangeAdd 加数変数への増分値の原子加算を実行します。
InterlockedExchangePointer 指定した 2 つの値を入れ替えます。
InterlockedIncrement 指定された変数の値をインクリメントし (1 つ増やします)、その結果得られた値をチェックします。
LeaveCriticalSection 指定されたクリティカルセクションオブジェクトの所有権を解放します。
MsgWaitForMultipleObjects 次のいずれかの条件が満たされると制御を戻します。
MsgWaitForMultipleObjectsEx 次のいずれかの条件が満たされると制御を戻します。
OpenEvent 既存の名前付きイベントオブジェクトを開きます。
OpenMutex 既存の名前付きミューテックスオブジェクトを開きます。
OpenSemaphore 既存の名前付きセマフォオブジェクトを開きます。
OpenWaitableTimer 既存の名前付き“待機可能”タイマオブジェクトのハンドルを取得します。
PulseEvent 指定されたイベントオブジェクトをシグナル状態に設定し、待機スレッドが存在する場合は適切な数のスレッドを解放し、その後でイベントオブジェクトを非シグナル状態に戻します。
QueueUserAPC ユーザーモード非同期プロシージャ呼び出し (APC) オブジェクトを、指定したスレッドの APC キューに追加します。
RegisterWaitForSingleObject 指定したコールバック関数をスレッドプールのキューに入れます。
ReleaseMutex 指定されたミューテックス (mutually exclusive;相互排他) オブジェクトの所有権を解放します。
ReleaseSemaphore 指定されたセマフォオブジェクトのカウントを、指定された数だけ増やします。
ResetEvent 指定されたイベントオブジェクトを非シグナル状態に設定します。
SetCriticalSectionSpinCount 指定したクリティカルセクションのスピンカウントを設定します。
SetEvent 指定されたオブジェクトをシグナル状態に設定します。
SetWaitableTimer 指定した“待機可能”タイマをアクティブにします。
SignalObjectAndWait オブジェクトへの通知と別のオブジェクトの待機を原子的に行うことができます。
TimerAPCProc アプリケーション定義のタイマ完了ルーチンです。CreateWaitableTimer 関数を呼び出して、この関数のアドレスを指定します。
TryEnterCriticalSection クリティカルセクションへのエントリをブロックせずに試みます。
UnregisterWaitEx RegisterWaitForSingleObject 関数によって発行された登録済み待機動作を取り消します。
WaitForMultipleObjects 指定されたオブジェクトの 1 つまたはすべてがシグナル状態になるか、またはタイムアウト時間が経過すると制御を返します。
WaitForMultipleObjectsEx 指定されたオブジェクトの 1 つまたはすべてがシグナル状態になるか、I/O 完了ルーチンまたは APC がスレッドのキューに置かれたか、またはタイムアウト時間が経過すると制御を返します。
WaitForSingleObject 指定されたオブジェクトがシグナル状態になるか、またはタイムアウト時間が経過すると制御を返します。
WaitForSingleObjectEx 指定されたオブジェクトがシグナル状態になるか、I/O 完了ルーチンまたは APC がスレッドのキューに置かれたか、またはタイムアウト時間が経過すると制御を返します。
WaitOrTimerCallback スレッドの開始アドレスの役割をするアプリケーション定義関数です。このアドレスは、CreateTimerQueueTimer 関数、RegisterWaitForSingleObject 関数を呼び出すときに指定します。




プロセス/スレッド


プロセス/スレッドの関数には、次のものがあります。

MSDN
関数説明
AssignProcessToJobObject プロセスを既存のジョブオブジェクトに関連付けます。
AttachThreadInput 特定のスレッドの入力処理機構を別のスレッドにアタッチします。
BindIoCompletionCallback スレッドプールの非 I/O ワーカースレッドのキューにコールバック関数を入れます。
CommandLineToArgvW Unicode ワイド文字で渡されたコマンドライン文字列を解析します。
ConvertThreadToFiber 現在のスレッドをファイバに変換します。
CreateFiber ファイバオブジェクトを確保し、そのオブジェクトにスタックを割り当て、指定された開始アドレスから実行を開始するための準備を行います。
CreateJobObject ジョブオブジェクトを作成します。
CreateProcess 新しい 1 個のプロセスと、そのプライマリスレッドを作成します。新しいプロセスは、指定された実行可能ファイルを実行します。
CreateProcessAsUser 新しいプロセスとそのプライマリスレッドを返します。
CreateProcessWithLogonW 新しいプロセスとそのプライマリスレッドを作成します。
CreateRemoteThread 別のプロセスのアドレス空間で稼働するスレッドを作成します。
CreateThread 呼び出し側プロセスの仮想アドレス空間で実行するべき 1 個のスレッドを作成します。
DeleteFiber 既存のファイバを削除します。
ExitProcess 1 つのプロセスと、そのプロセスに所属するすべてのスレッドを終了させます。
ExitThread 1 つのスレッドを終了させます。
FiberProc CreateFiber 関数とともに使うアプリケーション定義関数です。ファイバの開始アドレスの役割を果たします。
FreeEnvironmentStrings 複数の環境文字列からなる 1 個の環境ブロックを解放します。
GetCommandLine 現在のプロセスのコマンドライン文字列へのポインタを取得します。
GetCurrentFiber カレントファイバのアドレスを返します。
GetCurrentProcess 現在のプロセスに対応する疑似ハンドルを取得します。
GetCurrentProcessId 呼び出し側プロセスのプロセス識別子を取得します。
GetCurrentThread 現在のスレッドの擬似ハンドルを取得します。
GetCurrentThreadId 呼び出し側スレッドのスレッド識別子を取得します。
GetEnvironmentStrings 現在のプロセスに対応する環境ブロックへのポインタを取得します。
GetEnvironmentVariable 呼び出し側プロセスの環境ブロックから、指定された環境変数の値を取得します。この値は、NULL で終わる文字列です。
GetExitCodeProcess 指定されたプロセスの終了ステータスを取得します。
GetExitCodeThread 指定されたスレッドの終了ステータスを取得します。
GetFiberData カレントファイバに関連付けられたファイバデータを返します。
GetGuiResources このドキュメントの内容は、まだ確定されていないため将来変更される可能性があります。
GetPriorityClass 指定されたプロセスの優先順位クラスを返します。
GetProcessAffinityMask 指定されたプロセスのプロセスアフィニティマスクとシステムのシステムアフィニティマスクを返します。
GetProcessPriorityBoost 指定されたプロセスのプライオリティブースト制御の状態を返します。
GetProcessShutdownParameters 呼び出し側プロセスのシャットダウンパラメータを取得します。
GetProcessTimes 指定されたプロセスに関する時間情報を取得します。
GetProcessVersion 指定されたプロセスが、実行に当たって想定している Windows のメジャーバージョンとマイナーバージョンを取得します。
GetProcessWorkingSetSize 指定されたプロセスの最大ワーキングセットサイズと最小ワーキングセットサイズを取得します。
GetStartupInfo 呼び出し側プロセスを作成する際に指定された、STARTUPINFO 構造体の内容を取得します。
GetThreadPriority 指定されたスレッドの相対優先順位値を取得します。
GetThreadPriorityBoost 指定されたスレッドのプライオリティブースト制御の状態を返します。
GetThreadTimes 指定されたスレッドに関する時間情報を取得します。
GetTimestampForLoadedLibrary ロード済みイメージのタイムスタンプを取得します。
OpenJobObject 既存のジョブオブジェクトを開きます。
OpenProcess 既存のプロセスオブジェクトのハンドルを開きます。
OpenThread 既存のスレッドオブジェクトのハンドルを取得します。
QueryInformationJobObject ジョブオブジェクトからリミットとジョブの状態に関する情報を取得します。
QueueUserWorkItem スレッドプール内のワーカースレッドのキューに作業項目を入れます。
ResumeThread スレッドのサスペンド (中断) カウントを 1 減らします。
SetEnvironmentVariable 現在のプロセスに対応する 1 つの環境変数の値を設定します。
SetInformationJobObject ジョブオブジェクトのリミットを設定します。
SetPriorityClass 指定されたプロセスの優先順位クラスを設定します。
SetProcessAffinityMask 指定したプロセスに属するスレッドのプロセッサアフィニティマスクを設定します。
SetProcessPriorityBoost 指定されたプロセスに属するスレッドについて、特定のスレッドの優先順位を一時的に上げる Windows NT のブースト機能を無効にします。
SetProcessShutdownParameters 呼び出し側プロセスのシャットダウンパラメータを設定します。
SetProcessWorkingSetSize 指定されたプロセスの最小ワーキングセットサイズと最大ワーキングセットサイズを設定します。
SetThreadAffinityMask 指定されたスレッドのプロセッサアフィニティマスクを設定します。
SetThreadIdealProcessor スレッドの優先プロセッサを指定するときに使います。
SetThreadPriority 指定されたスレッドの相対優先順位値を設定します。
SetThreadPriorityBoost スレッドの優先順位を一時的に上げる Windows NT の機能を無効にします。
Sleep 指定された時間にわたって、現在のスレッドの実行を中断します。
SleepEx 現在のスレッドを中断します。次の条件のいずれかが満たされると、実行を再開します。
SuspendThread 指定されたスレッドの実行を中断します。
SwitchToFiber ファイバをスケジューリングします。
SwitchToThread 呼び出し側スレッドから現在のプロセッサで実行する準備ができている別のスレッドに実行を譲渡します。
TerminateJobObject ジョブに関連付けられているすべてのプロセスを終了します。
TerminateProcess 指定されたプロセスと、そのプロセスに所属するすべてのスレッドを終了させます。
TerminateThread 1 つのスレッドを終了させます。
ThreadProc スレッドの開始アドレスの役割を果たすアプリケーション定義関数です。
TlsAlloc スレッドローカル記憶域 (TLS) インデックスを確保します。
TlsFree スレッドローカル記憶域 (TLS) インデックスを解放し、再利用できるようにします。
TlsGetValue TlsGetValue 関数は、呼び出し側スレッドの、指定された TLS インデックスに対応するスレッドローカル記憶域 (TLS) スロットに入っている値を取得します。
TlsSetValue 呼び出し側スレッドの、指定された TLS インデックスに対応するスレッドローカル記憶域 (TLS) スロットに値を入れます。
UserHandleGrantAccess ユーザーインターフェイス制限の付いたジョブに USER ハンドルへのアクセス権を与えます。
WaitForInputIdle 指定されたプロセスで未処理の入力が存在せず、ユーザーからの入力を待っている状態になるまで、またはタイムアウト時間が経過するまで待機します。
WinExec 指定されたアプリケーションを実行します。
Yield 16 ビット版 Windows との互換性を維持するためだけに残されているもので、今後廃止されます。Win32 ベースのアプリケーションプログラミングインターフェイス (API) では、この関数は何もしません。

2006年09月18日(月) 15:36:30 Modified by aqualung




スマートフォン版で見る