线程基类:线程基类实现线程启动停止,纯虚函数实现基类接口
class ThreadBase
{
ThreadBase(){};
virtual ~ThreadBase(){};
virtual void run()=0;
virtual void stop(){};
};
线程类:
class Thread::ThreadBase
{
public:
enum ThreadPriority{
THREAD_HIGH,
THREAD_NORMAL,
THREAD_LOW
};
public:
//构造函数
//析构函数
Thread(ThreadBase*target);
bool start();
bool IsAlive();
void join();
void join(long minis);
void suspend();
void resume();
void setPriority(ThreadPriority priority=THREAD_NORMAL);
virtual void run();
virtual void stop();
pthread_attr_t attr;
public:
pthread_t threadID;
ThreadBase *target;
};
子类线程继承线程类,重新定义了run()。来实现不同的服务功能。