linux
#include <pthread.h>
class CIOModel
{
public:
CIOModel();
static void* startrecv(void *arg);
void Startrecv();
private:
pthread_t tid;
}
#include <>
void CIOModel::Startrecv()
{
这个线程里面已经可以开始使用类的成员变量了
}
void *CIOModel::startrecv(void *arg)
{
CIOModel *io = (CIOModel *)arg;
io->Startrecv();
}
pthread_create(&tid, NULL, startrecv, this);
windows
class CIo
{
public:
CIo();
~CIo();
void ioStart();
void Start();
static DWORD WINAPI start(void *arg);
private:
};
void CIo::Start()
{
这个线程里面已经可以开始使用类的成员变量了
}
DWORD WINAPI CIo::start(void *arg)//返回值一定要这样写
{
CIo *io = (CIo *)arg;
io->Start();
return 0;
}
void CIo::ioStart()
{
HANDLE Handle;
Handle = CreateThread(NULL, 0, start, this, 0, NULL);
CloseHandle(Handle);
}