33,311
社区成员
发帖
与我相关
我的任务
分享
#include "stdio.h"
#include "windows.h"
HANDLE hThread; //工作线程句柄
MSG msg = {0}; //用于消息循环中接收消息
//处理工作的线程
DWORD WINAPI WorkThreadProc(LPVOID lpParameter )
{
//下面处理工作
//。。。
printf("线程处理完工作了!\n");
//ok,这里工作处理完毕,要求自动退出控制台程序
//安全起见,发送消息让主线程接收再处理比较好,不在这里直接exit
PostMessage(NULL,WM_CLOSE,0,0); //这里不知道能不能这样发送消息给主线程
return 1;
}
int main(int argc, char *argv[])
{
hThread = CreateThread(NULL,0,WorkThreadProc,NULL,0,NULL);
CloseHandle(hThread);
//自行在消息循环中获取线程完成工作请求退出Console的消息
while (GetMessage(&msg, NULL, 0, 0))
{
if(WM_CLOSE == msg.message)
{
printf("收到消息了!");
getchar();
return 0;
}
else
{
//这里对于其他消息 应该不需要处理吧,else可以不写的吧?
}
}
getchar();
return 0;
}