Chinaunix首页 | 论坛 | 博客
  • 博客访问: 659662
  • 博文数量: 134
  • 博客积分: 3158
  • 博客等级: 中校
  • 技术积分: 1617
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-30 22:36
文章分类

全部博文(134)

文章存档

2012年(2)

2011年(28)

2010年(68)

2009年(35)

2008年(1)

我的朋友

分类: 嵌入式

2010-09-14 13:57:33

建立一个线程函数:UINT ThreadProc(LPVOID parm)
{
 ::MessageBox((HWND)parm,"Thread activated.","Thread",MB_OK);
 while(threadController == 1)
 {
  ;
 }
 ::MessageBox((HWND)parm,"Thread stopped.","Thread",MB_OK);
 return 0;
}
 
 然后在某处开始这个线程.
 threadController = 1;
HWND hWnd = GetSafeHwnd();
 AfxBeginThread(ThreadProc, hWnd, THREAD_PRIORITY_NORMAL);
 
 
利用建立的全局变量:volatile int threadController;来控制结束线程.
关于 volatile关键字的作用:"讲讲volatile的作用"
用它来表明这二个变量可以在使用它的线程之外改变它的值.这个关键字请求编译器不在寄存器中缓存这个变量或者不要因为这个代码在一个线程中可能不会修改而把这个变量存储为不可修改的形式.
阅读(2939) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~