CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  进程/线程/DLL

求救一个多线程问题

楼主xuan9932()2004-12-04 13:02:18 在 VC/MFC / 进程/线程/DLL 提问

代码如下:  
  #include<windows.h>  
  #include<isotream.h>  
  DWORD   test(PVOID)  
  {  
  cout<<"Done!"<<endl;  
  return   1;  
  }  
  void   create()  
  {  
  HANDLE   h;  
  h=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)test,0,0);  
  }  
  void   main()  
  {  
  create();  
  getchar();  
  }  
   
  结果是屏幕要等我按了一个键之后才显示:done!.即是说在getchar之后才执行创建线程.  
  有什么办法可以在getchar()之前,在create函数未结束之前能够显示done!呢? 问题点数:50、回复次数:5Top

1 楼EnochShen(小疯子:真的好菜—知耻而后勇!)回复于 2004-12-04 13:18:38 得分 40

#include   "stdafx.h"  
   
  #include   <windows.h>  
  #include   <iostream.h>  
  #include   <stdio.h>  
   
  DWORD   WINAPI   ThreadProc(LPVOID   lpParameter)  
  {  
  cout<<"Done!"<<endl;  
   
  return   0;  
  }  
   
  int   main(int   argc,   char*   argv[])  
  {  
  DWORD   dwThread   =   0;  
  CreateThread(NULL,0,ThreadProc,NULL,0,&dwThread);  
  getchar();  
   
  return   0;  
  }  
  Top

2 楼HunterForPig(留着口水的猪)回复于 2004-12-04 14:43:21 得分 10

bool   bDone=false;  
  DWORD   WINAPI   ThreadProc(LPVOID   lpParameter)  
  {  
  while(true)  
  {  
  if(bDone)  
  {  
  printf("done");  
  break;  
  }  
  }  
  return   0;  
  }  
   
  int   main(int   argc,   char*   argv[])  
  {  
  DWORD   dwThread   =   0;  
  CreateThread(NULL,0,ThreadProc,NULL,0,&dwThread);  
  while(true)  
  {  
  char   n=getchar();  
  if(n!=NULL)  
  bDone=true;  
  }  
  return   0;  
  }  
  如主线程main销毁,自己所创建的线程也就结束了1Top

3 楼danyueer(淡月儿:从此以后,各人得各人的眼泪罢了)回复于 2004-12-04 16:47:37 得分 0

等待线程自然结束:  
   
  void   create()  
  {  
      HANDLE   h;  
      h   =   CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)test,0,0);  
      WaitForSingleObject(h,   INFINITE);  
  }Top

4 楼xuan9932()回复于 2004-12-04 17:50:25 得分 0

ok,搞定了,结贴Top

5 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2004-12-04 18:07:11 得分 0

用event控制线程的运行  
  或按月儿mm的,等待线程返回后再getcharTop

相关问题

  • 多线程啊多线程
  • 多线程socket!!!
  • 多线程
  • 多线程
  • 多线程
  • 多线程
  • CSocket 多线程
  • java多线程
  • 多线程
  • opengl 多线程?

关键词

  • cout
  • dword
  • include

得分解答快速导航

  • 帖主:xuan9932
  • EnochShen
  • HunterForPig

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo