Pistol_Pete
Messages postés1054Date d'inscriptionsamedi 2 octobre 2004StatutMembreDernière intervention 9 juillet 20137 19 janv. 2009 à 18:49
Salut
Oui effectivement, j'ai oublié un paramètre pour la fonction createthread.
Dans cet petit exemple, tout les thread exécute la même fonction mais ca c'est toi qui voit.
Tu peux faire quelque chose comme ca:
hTread[i]=CreateThread(NULL,0,MA_FONCTION_1,0,0,&threadID);
hTread[i]=CreateThread(NULL,0,MA_FONCTION_2,0,0,&threadID);
hTread[i]=CreateThread(NULL,0,MA_FONCTION_3,0,0,&threadID);
hTread[i]=CreateThread(NULL,0,MA_FONCTION_4,0,0,&threadID);
La chaque thread exécuterons une fonction différente.
A+
____________________________________________________________________________
Mon site internet : http://ImAnalyse.free.fr http://ImAnalyse.free.fr
dyroj
Messages postés123Date d'inscriptionvendredi 14 novembre 2008StatutMembreDernière intervention18 juin 2012 19 janv. 2009 à 15:04
salut,
meci beaucoup pistol_pete mais ya un problem avec hTread[i]=CreateThread(NULL,0,MA_FONCTION,0,0);
je suis sous dev et le compilateur me dit "too few arguments to function `CreateThread' "
++
Vous n’avez pas trouvé la réponse que vous recherchez ?
dyroj
Messages postés123Date d'inscriptionvendredi 14 novembre 2008StatutMembreDernière intervention18 juin 2012 19 janv. 2009 à 15:28
enfaite tu a juste oublier un argument,
:
DWORD WINAPI MA_FONCTION(LPVOID lParam)
{
//
}
int main()
{
int i;
DWORD threadID;
HANDLE hTread[4];
for(i=0;i<4;i++)
{
hTread[i]=CreateThread(NULL,0,MA_FONCTION,0,0,&threadID);
if(hTread[i]==0){
MessageBox(NULL,"Erreur",NULL,MB_OK|MB_ICONWARNING);
return 0;
}
}
//On attend la fin des 4 threads
WaitForMultipleObjects(4,hTread,TRUE,INFINITE);
//fermeture des threads
for(i=0;i<4;i++)
CloseHandle(hTread[i]);
}
je ne compren pas un truc se que j'ai lu sur les thread c'est qu'on paut executer plusieur tache en meme temp alors que la je ne voit pas comment faire.
++