Bonjour, j'ai un problème sans doute pas compliqué à résoudre mais sur lequel je cale depuis un moment.
Dans mon main, je souhaite lancer plusieurs threads d'une classe de la façon suivante :
main.cppavec ma thread déclarée de la façon suivante dans ma classe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 ... for(i=0;i<nb_elem;i++) { if (fee[i]->GetType()=="File_feeder") { DWORD ThreadID; CreateThread (NULL , NULL, File_feeder::Thread_File,(LPVOID) fee[i] ,NULL,&ThreadID); } }
file_feeder.hHélas, j'ai une erreur sur le CreateThread que je n'arrive pas à résoudre meme en forcant le param 3 en mettant (LPTHREAD_START_ROUTINE) devant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class File_feeder : public Feeder { public: ... DWORD WINAPI Thread_File(LPVOID lpParam) { /*code*/ return 0; } }et je ne réussi pas à la résoudre
Code : Sélectionner tout - Visualiser dans une fenêtre à part error C2664: 'CreateThread' : impossible de convertir le paramètre 3 de 'DWORD (__stdcall File_feeder::* )(LPVOID)' en 'LPTHREAD_START_ROUTINE'Si un connaisseur en threads a une piste, il est le bienvenu
![]()
Partager