View difference between Paste ID: hnz5wvWH and UUnyAzSt
SHOW: | | - or go back to the newest paste.
1
class myClass
2
{
3
	static DWORD WINAPI ThreadCreate(LPVOID lParam);
4-
	DWORD ThreadStart(void);
4+
	DWORD ThreadStart(LPVOID);
5
6
	void JakasFunkcja();
7
}
8
9
struct myArgs
10
{
11
	MyClass* myclass;
12
	int a, b;
13-
	myClass* _This = (myClass*)lParam
13+
};
14-
	return _This->ThreadStart();
14+
15
// -----
16
17-
DWORD myClass::ThreadStart()
17+
18
{
19
	myClass* _This = static_cast<myArgs*>(lParam)->myclass;
20
	return _This->ThreadStart(lParam);
21
}
22
23
DWORD myClass::ThreadStart(LPVOID lParam)
24
{
25
	// kod do 3wykonania w watku
26-
	HANDLE t1 = CreateThread(NULL, 0, ThreadCreate, (void*)this, 0, &ThreadID);
26+
	int start = static_cast<myArgs*>(lParam)->a;
27
	int end = static_cast<myArgs*>(lParam)->b;
28
}
29
30
// tu uruchamiam watek
31
void myClass::JakasFunkcja()
32
{
33
	myArgs arg {this, 10,20};
34
35
	DWORD ThreadID;
36
	HANDLE t1 = CreateThread(NULL, 0, ThreadCreate, &arg, 0, &ThreadID);
37
}