两个线程cout的问题

jingank 2011-04-19 10:15:27
vs2010下 两个线程cout输出 为什么有的时候能换行,有的时候不能 就好象endl不灵一样
代码如下

#include<windows.h>
#include<iostream>
using namespace std;
DWORD WINAPI ThreadProc(
__in LPVOID lpParameter
);
int index = 0;
int main()
{
HANDLE hThread = CreateThread(0,0,ThreadProc,0,0,0);
CloseHandle(hThread);
while(index++<1000)
cout<<"Main Thread is running"<<endl;

//system("pause");
}
DWORD WINAPI ThreadProc(
__in LPVOID lpParameter
)
{
while(index++<1000)
cout<<"Thrad is running"<<endl;
//system("pause");
return 0;
}
...全文
81 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
smwhotjay 2011-04-19
  • 打赏
  • 举报
回复
如上所释
SEESEECN 2011-04-19
  • 打赏
  • 举报
回复
需要线程同步
Eleven 2011-04-19
  • 打赏
  • 举报
回复
cout不是线程安全的,要靠自己去线程同步
你改用printf吧

15,471

社区成员

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

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