Création d'un thread dans une dll
Bonjour,
J'ai besoin de créer un thread dans ma dll pour appeler une fonction toute les 0.5 secondes pendant un certain temps.
la fonction à lancer est déclarée ainsi
Code:
1 2 3 4 5 6 7 8 9
|
void MaClass::MaFonctionThread(void)
{
while (ContinueLoop)
{
//FaitCeci();
std::this_thread::sleep_for(std::chrono::milliseconds(500));
}
} |
et je l'appelle comme ça
Code:
1 2 3
|
std::thread t1(&MaClass::MaFonctionThread);
t1.join(); |
le compilateur me renvoie cette erreur
Citation:
Error C2672 'std::invoke': no matching overloaded function found C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\thr\xthread 240
Error C2893 Failed to specialize function template 'unknown-type std::invoke(_Callable &&,_Types &&...)' C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\thr\xthread 240
si je supprime le & dans la création du thread (comme je l'ai vu dans certains tutos).
J'ai cette erreur
Citation:
Error C3867 'MaClass::MaFonctionThread': non-standard syntax; use '&' to create a pointer to member
Je tourne en rond sur la création de ce thread depuis un petit moment .
Merci pour votre aide.