[table]
|CreateThread() |引用计数器自加,HANDLE-指向核心对象-并非线程本身|
|CloseHandle() |引用计数器自减,无引用时销毁,HANDLE只是一个引用的地址|
|GetExitCodeThread() ||
|GetLastError() |获取错误|
|ExitThread() ||
|WaitForSingleObject() |等待线程结束 |
|WaitForMultipleObjects() |等待多个线程结束 |
|MsgWaitForMultipleObjects()|等待多个线程结束或消息到达|
|AttachThreadInput() ||
|PostThreadMessage() ||
|||
|||
[/table]
HANDLE CreateThread(
PSECURITY_ATTRIBUTES psa,
DWORD dwStackSize, // 线程堆栈大小
PTHREAD_START_ROUTINE lpStartAddr, // 函数指针
LPVOID lpParameter, // 参数地址
DWORD dwCreationFlags, // 是否立即开始
PDWORD lpThreadID); // 新线程的ID
|CreateThread() |引用计数器自加,HANDLE-指向核心对象-并非线程本身|
|CloseHandle() |引用计数器自减,无引用时销毁,HANDLE只是一个引用的地址|
|GetExitCodeThread() ||
|GetLastError() |获取错误|
|ExitThread() ||
|WaitForSingleObject() |等待线程结束 |
|WaitForMultipleObjects() |等待多个线程结束 |
|MsgWaitForMultipleObjects()|等待多个线程结束或消息到达|
|AttachThreadInput() ||
|PostThreadMessage() ||
|||
|||
[/table]
HANDLE CreateThread(
PSECURITY_ATTRIBUTES psa,
DWORD dwStackSize, // 线程堆栈大小
PTHREAD_START_ROUTINE lpStartAddr, // 函数指针
LPVOID lpParameter, // 参数地址
DWORD dwCreationFlags, // 是否立即开始
PDWORD lpThreadID); // 新线程的ID