線程基類:線程基類實作線程啟動停止,純虛函數實作基類接口
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()。來實作不同的服務功能。