mfc 创建线程函数AfxBeginThread,线程中访问mfc控件
来源:互联网 发布:淘宝优惠微信群 编辑:程序博客网 时间:2024/06/08 14:36
转字http://blog.csdn.net/guomsh/article/details/10377993
1. C++ 中如何定义线程函数
有两种方法:a. 定义线程函数为全局函数 b. 定义线程函数为类的静态成员函数
2. C++中的线程函数如何访问类中的成员变量
针对线程函数为类的静态成员进行说明。如果是静态数据成员,当然可以直接访问,但是如果要访问非静态数据成员,直接访问是做不到的。如果要想在线程函数中访问和操作类的非静态成员变量,可以把线程函数作为一个适配器,在适配器中调用类的非静态成员函数。例如:
class CMyClass
{
public:
void TestFunc();
static int ThreadFunc(LPVOID pParam);// Adapter
protected:
int ThreadFuncKernal();// Kernal
}
void CMyClass::TestFunc()
{
AfxBeginThread(TreadFunc, this);
}
// Thread function Adapter
int CMyClass::ThreadFunc(LPVOID pParam)//这个是线程,声明时使用static关键字 ,不能访问控件
{
CMyClass *pObj = (CMyClass *)pParam;
return pObj->ThreadFuncKernal();
}
// Thread function kernal
int CMyClass::ThreadFuncKernal()//在这里可以访问mfc的控件
{
while(1)
{
// my thread
// to control class non-static member
}
return 0;
}
0 0
- mfc 创建线程函数AfxBeginThread,线程中访问mfc控件
- MFC创建线程01 AfxBeginThread
- MFC创建线程02 AfxBeginThread .
- mfc下AfxBeginThread创建线程
- 用MFC库函数AfxBeginThread()来创建线程
- MFC用户线程AfxBeginThread()
- MFC中, 子线程怎样访问控件
- MFC 用afxbeginthread创建线程 线程函数直接 return 0 返回。任务管理器显示线程数与理论值不符
- MFC之AfxbeginThread 线程 创建、挂起、释放、结束、退出
- MFC中 如何在类对象内部创建线程(AfxBeginThread())
- 浅谈MFC中AfxBeginThread函数
- 用MFC库函数AfxBeginThread来操作线程
- 用MFC库函数AfxBeginThread来操作线程
- 用MFC库函数AfxBeginThread来操作线程
- 用MFC库函数AfxBeginThread来操作线程
- 用MFC库函数AfxBeginThread来操作线程
- 用MFC库函数AfxBeginThread来操作线程
- MFC线程函数中访问成员变量的方法
- 优秀字体 —(设计)
- 5.2.1欧几里得算法
- 使用CAShapeLayer 的 转圈圈动画
- 第一篇 Android驱动开发环境搭建之一 -- 虚拟机搭建
- Haskell/Modules
- mfc 创建线程函数AfxBeginThread,线程中访问mfc控件
- Atitit.基于dsl的methodinvoker
- Mac不可或缺的插件-HomeBrew
- Phoenix4.8整合Spark
- MySQL 数据库 基本操作 (新建、增、删、改、查、show)
- python 的日志logging模块学习
- hadoop 四种压缩格式
- Egret的帧动画的使用
- poj 2823 Sliding Window 单调队列