Cetvrti parametar je pointer koji prosledjujes u thread. Ta vrednost ce se pojaviti kao parametar tvoje thread funkcije.
Primer:
Code:
class Job
{
public:
Job(){}
virtual ~Job(){}
void StartThread();
protected:
// static je obavezan
static DWORD WINAPI MyThreadProc(LPVOID lpParameter);
HANDLE m_Thread;
DWORD m_ThreadID;
void Run();
}
DWORD WINAPI Job::MyThreadProc(LPVOID lpParameter)
{
Job* j = (Job*) lpParametar;
j->Run();
}
void Job::Run()
{
// ovde napisi tvoj thread code
}
void Job::StartThread()
{
m_Thread = CreateThread(NULL, 0, MyThreadProc, this, 0, &m_ThreadID);
}
Kao sto vidis u pozivu CreateThread kao treci param je static metoda (MyThreadProc) klase, a cetvrti je this pointer. Thread ce poceti u funkciji MyThreadProc, a parametar ce biti this pointer koji je prosledjen u pozivu CreateThread funkcije. Ukratko... cetvrti parametar se koristi da threadu prosledis nesto sa cime ce on da radi.
yooyo
[Ovu poruku je menjao yooyo dana 22.01.2006. u 01:42 GMT+1]