多线程函数和静态线程函数调用类成员非静态变量和函数的问题

  

创建线程时,线程函数如果要设置成类的成员函数,则必须是静态成员函数,在此函数种不能使用非静态成员变量,如果要使用非静态成员变量,则一种比较适合线程的方法是:建立线程的时候把 this作为CreateThread的一个参数(即第4个参数,就是那个LPVOID型的),然后线程里就对应pParam,例如:
  static UINT ThreadProc(LPVOID pParam)  
  {  
      Your_Class *p=(Your_Class *)pParam;  
      //然后用p间接使用成员变量。 
    }

线程函数是回调函数,因此它必须是静态成员函数或者是类外部声明的全局函数。

 

更多技术文章请参看施昌权的个人网站: http://www.joyvc.cn

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值