The following table lists routines available for multithread programs. For more information on these routines, see the Microsoft Developer Network (MSDN) or platform SDK documentation.
Routine |
Description |
---|---|
CloseHandle |
Closes an open object handle. |
CreateEvent |
Creates a named or unnamed event object. |
CreateMutex |
Creates a named or unnamed mutex object. |
CreateProcess |
Creates a new process and its primary thread. |
CreateSemaphore |
Creates a named or unnamed semaphore object. |
CreateThread |
Creates a thread to execute within the address space of the calling process. |
DeleteCriticalSection |
Releases all resources used by an unowned critical section object. |
DuplicateHandle |
Duplicates an object handle. |
EnterCriticalSection |
Waits for ownership of the specified critical section object. |
ExitProcess |
Ends a process and all its threads. |
ExitThread |
Ends a thread. |
GetCurrentProcess |
Returns a pseudohandle for the current process. |
GetCurrentProcessId |
Returns the process identifier of the calling process. |
GetCurrentThread |
Returns a pseudohandle for the current thread. |
GetCurrentThreadId |
Returns the thread identifier of the calling thread. |
GetExitCodeProcess |
Retrieves the termination status of the specified process. |
GetExitCodeThread |
Retrieves the termination status of the specified thread. |
GetLastError |
Returns the calling thread's last-error code value. |
GetPriorityClass |
Returns the priority class for the specified process. |
GetThreadPriority |
Returns the priority value for the specified thread. |
InitializeCriticalSection |
Initializes a critical section object. |
LeaveCriticalSection |
Releases ownership of the specified critical section object. |
OpenEvent |
Returns a handle of an existing named event object. |
OpenMutex |
Returns a handle of an existing named mutex object. |
OpenProcess |
Returns a handle of an existing process object. |
OpenSemaphore |
Returns a handle of an existing named semaphore object. |
PulseEvent |
As a single operation, sets (to signaled) and then resets the state of the specified event object after releasing the appropriate number of waiting threads. |
ReleaseMutex |
Releases ownership of the specified mutex object. |
ReleaseSemaphore |
Increases the count of the specified semaphore object by a specified amount. |
ResetEvent |
Sets the state of the specified event object to nonsignaled. |
ResumeThread |
Decrements a thread's suspend count. When the suspend count is zero, execution of the thread resumes. |
SetEvent |
Sets the state of the specified event object to signaled. |
SetLastError |
Sets the last-error code for the calling thread. |
SetPriorityClass |
Sets the priority class for the specified process. |
SetThreadPriority |
Sets the priority value for the specified thread. |
SuspendThread |
Suspends the specified thread. |
TerminateProcess |
Terminates the specified process and all of its threads. |
TerminateThread |
Terminates a thread. |
TlsAlloc |
Allocates a thread local storage (TLS) index. |
TlsFree |
Releases a thread local storage (TLS) index, making it available for reuse. |
TlsGetValue |
Retrieves the value in the calling thread's thread local storage (TLS) slot for a specified TLS index. |
TlsSetValue |
Stores a value in the calling thread's thread local storage (TLS) slot for a specified TLS index. |
WaitForMultipleObjects |
Returns either any one or all of the specified objects are in the signaled state or when the time-out interval elapses. |
WaitForSingleObject |
Returns when the specified object is in the signaled state or the time-out interval elapses. |
If a function mentioned in this section is not listed in the preceding table, it is only available through the USE IFWIN statement.