您的位置:首页 > 其它

Threads(Chapter 3 of Concurrent Programming on Windows)

2010-08-15 14:16 513 查看
code 1 #include <stdio.h>
2 #include <windows.h>
3
4 DWORD WINAPI MyThreadStart(LPVOID);
5
6 int main(int argc, wchar_t * argv[])
7 {
8 HANDLE hThread;
9 DWORD dwThreadId;

hThread = CreateThread(NULL,
0,
&MyThreadStart,
"Hello World",
0,
&dwThreadId);

if(!hThread)
{
fprintf(stderr, "Thread creation failed: %d\r\n", GetLastError());
return -1;
}

printf("%d: Created thread %x (ID %d)\r\n", GetCurrentThreadId(), hThread, dwThreadId);

WaitForSingleObject(hThread, INFINITE);
DWORD dwExitCode;
GetExitCodeThread(hThread, &dwExitCode);
printf("%d: Thread exited: %d\r\n", GetCurrentThreadId(), dwExitCode);
CloseHandle(hThread);

return 0;
}

DWORD WINAPI MyThreadStart(LPVOID lpParameter)
{
printf("%d: Running: %s\r\n", GetCurrentThreadId(), reinterpret_cast<char *>(lpParameter));
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: