CWinThread类_自我学习

 

CWinThread类

CWinThread类封装了对线程的操作,一个CWinThread对象代表在应用程序中一个线程的执行。在MFC应用程序中,主执行线程是CWinThread派生类CWinApp的派生类对象。由CWinApp类派生的新类都是用户界面线程。
1.成员变量
  CWinThread类的成员变量有以下5个:
  m_bAutoDelete:线程终止时是否自动销毁。
  m_hTread:当前线程的句柄。
  m_nTreadID:当前线程的标识。
  m_pMainWnd:应用程序主窗口指针。
  m_pActiveWnd:激活窗口指针。
2.成员函数
  CWinThread类的常用成员函数如下:
  调用CreateTread函数用于创建一个新线程,函数声明如下:
  BOOL CreateTread
  {
  DWORD dwCreateFlags=0, //线程创建标志
  UINT nStackSize=0, //线程堆栈大小
  LPSECURITY_ATTRIBUTES lpSecurityAttrs=NULL //线程的安全属性
  };
  调用GetTreadPriority函数获取线程的优先级,函数声明如下:
  int GetTreadPriority();
  线程的优先级取值如下:
  THREAD_PRIORITY_TIME_CRITICAL:实时优先级
  THREAD_PRIORITY_HIGHEST:比普通优先级高两个单位
  THREAD_PRIORITY_ABOVE_NORMAL:比普通优先级高一个单位
  THREAD_PRIORITY_NORMAL:普通优先级
  THREAD_PRIORITY_BELOW_NORMAL:比普通优先级低一个单位
  THREAD_PRIORITY_LOWEST比普通优先级低两个单位
  THREAD_PRIORITY_IDLE:空闲优先级
  调用SetThreadPriority函数用于设置线程的优先级,函数声明如下:
  BOOL SetThreadPriority(
  int nPriority; //优先级
  );
  调用PostThreadMessage函数用于向另一个CWinThread对象发送信息,函数声明如下:
  BOOL PostThreadMessage(
  UINT message, //用户定义消息标识
  WPARAM wParam, //消息的第一个参数
  LPARAM lParam //消息的第二个参数
  );
  调用SuspendThread函数用于将线程的挂起计数加1,当线程的挂起计数大于0时,该线程将暂停执行,称之为挂起状态。函数声明如下:
  DWORD SuspendThread();
  调用ResumeThread函数用于将生成的挂起计数减1,当线程的挂起计数减少到0时,恢复线程的执行。函数声明如下:
  DWORD ResumeThread();
3.重载函数
  CWinThread类的常用重载函数如下:
  重载InitInstance函数用与执行线程实例的初始化工作。函数声明如下:
  virtual BOOL InitInstance();
  重载ExitInstance函数用于执行清理工作,函数声明如下:
  virtual int ExitInstance();
  重载OnIdle函数用于执行线程空闲处理工作,函数声明如下:
  virtual BOOL OnIdle(
  LONG ICount //计数器
  );
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值