在线程中用printf打印语句不显示

freelysuiyi 2010-09-11 06:26:39
#include <WINSOCK2.H>
#include <windows.h>
#include <stdio.h>
#pragma comment(lib, "ws2_32.lib")


DWORD WINAPI Listener(LPVOID pParam)
{
printf("线程创建成功");
return 0;
}

void main()
{
HANDLE listenport;
DWORD dwThreadId;
printf("主线程可以显示\n");
listenport = CreateThread(NULL, 0, Listener, 0, NULL, &dwThreadId);
if(listenport)
CloseHandle(listenport);
else
printf("创建线程失败!");
}

显然“创建线程失败”这句话没有打印出来,说明线程创建成功,但是线程中“线程创建成功”却没有打印出来,不知道是为什么啊?那个高人能帮帮我?
...全文
524 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
guoxuqu 2010-09-11
  • 打赏
  • 举报
回复
在创建完线程后面加这一句:sleep(2000);就可以看到线程创建成功”打印出来。
guoxuqu 2010-09-11
  • 打赏
  • 举报
回复
因为创建完线程后,主线程就退出了,所以进程就结束了,那个创建的线程当然也结束了。

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧