Pracuję nad profilera .NET, który piszę w C++ (biblioteka dll, która używa ATL). Chcę utworzyć wątek, który zapisuje do pliku co 30 sekund. Chcę funkcja gwint być metoda jednego z moich klasUtwórz wątek wewnątrz DLL
DWORD WINAPI CProfiler::MyThreadFunction(void* pContext)
{
//Instructions that manipulate attributes from my class;
}
gdy próbuję uruchomić wątku
HANDLE l_handle = CreateThread(NULL, 0, MyThreadFunction, NULL, 0L, NULL);
mam ten błąd:
argument of type "DWORD (__stdcall CProfiler::*)(void *pContext)"
is incompatible with parameter of type "LPTHREAD_START_ROUTINE"
Jak prawidłowo utworzyć wątek w bibliotece DLL? Każda pomoc będzie dostępna.
Wskaźniki funkcji i wskaźniki funkcji elementów są bardzo różne. Musisz zadeklarować funkcję członka jako statyczną. –
możliwy duplikat [Jak używać CreateThread dla funkcji, które są członkami klasy?] (Http://stackoverflow.com/questions/1372967/how-do-you-use-createthread-for-functions-which-are-class -members) –