00001 #if !defined(AFX_MYTHREAD_H__E3E00120_403D_4D65_8CE1_997B8EBB1665__INCLUDED_)
00002 #define AFX_MYTHREAD_H__E3E00120_403D_4D65_8CE1_997B8EBB1665__INCLUDED_
00003
00004 #if _MSC_VER > 1000
00005 #pragma once
00006 #endif // _MSC_VER > 1000
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 typedef struct
00029 {
00030 T methode;
00031 Param param;
00032 } TParam;
00033
00034
00035 template <class T> class CMyThread
00036 {
00037 private:
00038 TParam m_param;
00039 DWORD m_threadID;
00040 HANDLE m_hThread;
00041
00042 public:
00043 CMyThread(T methode , Param param);
00044 virtual ~CMyThread();
00045
00046 BOOL Run();
00047 BOOL Stop(DWORD exitCode=1);
00048 BOOL IsRunning();
00049 DWORD GetExitCode();
00050 }
00051
00052 #endif // !defined(AFX_MYTHREAD_H__E3E00120_403D_4D65_8CE1_997B8EBB1665__INCLUDED_)