首页 > 编程语言 > 详细

猎豹MFC--进程和线程--创建线程AfxBeginThread() SetDlgItemInt()线程暂停继续终止

时间:2016-03-20 21:24:05      阅读:291      评论:0      收藏:0      [点我收藏+]
技术分享
增加一按钮  双击:
SPY++查看  进程下面的线程:
技术分享
技术分享
技术分享
另一个线程函数:
技术分享
技术分享
技术分享

定义一个指针变量:
技术分享
在构造函数中初始化:
技术分享
技术分享
暂停线程:
技术分享
线程继续:
技术分享
定义布尔变量 记录 线程有没有在运行:
技术分享
初始化该变量:
技术分享
技术分享
修改县城函数demoA:
技术分享
技术分享
对话框添加按钮,双击该按钮:
增加一个线程函数:
技术分享
实现线程函数:
技术分享
增加第2个按钮  掉用第二个线程函数:‘
技术分享
技术分享

技术分享

按了第一个按钮立马按第二个按钮时  也就是当两个线程并发执行时就会出错:
技术分享

技术分享

技术分享
以上是线程同步的四种方法,是MFC的C++类
定义指针:指向临界区对象:
技术分享
在构造函数中 创建临界区对象
技术分享
如下 用临界区对象调用lock()函数便可保护操作内容
技术分享
第一个线程结束 了 第二个线程才成调用
//////////////////////////////////////////////////////////////////////////
法二使用互斥量对象进行线程同步:
定义指针指向互斥量对象:
技术分享
创建互斥量对象:
技术分享
CSingleLock为MFC中的类:
技术分享
线程B一样:
技术分享
///////////////////////////////////////////////////
法三 信号量:
技术分享
技术分享
其余不变:
技术分享
线程B一样用信号量创建锁:
技术分享


定义变量:
技术分享

技术分享
析构如下:
技术分享
技术分享
另一个进程也一样。






猎豹MFC--进程和线程--创建线程AfxBeginThread() SetDlgItemInt()线程暂停继续终止

原文:http://www.cnblogs.com/hungryvampire/p/5299510.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!