00001
00003
00004 #ifndef header_thread
00005 #define header_thread
00006
00007 class CL_Runnable
00008
00009
00010 {
00011 public:
00012 virtual void run()=0;
00013
00014 };
00015
00016 class CL_Thread
00017 {
00018 public:
00019 static CL_Thread *create(CL_Runnable *runnable);
00020 00022
00023 static CL_Thread *create(int (*func)(void*), void* value);
00024 00027
00028 virtual ~CL_Thread () {;}
00029
00030 virtual void start()=0;
00031
00032
00033 virtual void terminate()=0;
00034
00035
00036 virtual void wait()=0;
00037
00038 };
00039
00040 #endif