C++ 如何在类中创建线程
问题描述:
一般我们在启线程时,都是把线程函数写成全局函数来使用,但是如果要把线程操作写成类,线程函数放在类里面在C++编译会不通过。
在C++类中创建线程会有报错:
下面以一个简单的类进行举例
EXTERNAL.h文件
#ifndef _RADIO_EXTERNAL_H_
#define _RADIO_EXTERNAL_H_
class CRadioTask : public CTaskBase
{
public:
CRadioTask();
virtual ~CRadioTask();
virtual int Run();
int WriteNetMessage(BYTE *pBuffer, USHORT uLen);
private:
BYTE m_line_id;
BYTE m_ConnectStatus; 0-断开,1-连接
BYTE m_sendFlag; //0-未发送,1-已发送
};
#endif
在EXTERNAL.cpp文件的成员函数中直接创建线程会导致编译不通过
int CRadioTask::Run()
{
OsBeginTask( &m_ThreadId, WriteNe