Bonjour,
J'ai une application qui fonctionne actuellement en monothread et j'aimerai la passer en multithread. Mon application permet d'analyser un lot d'images. L'interface que j'ai conçu sous visual permet à l'utilisateur de choisir le nombre de thread qu'il souhaite lancer (chaque thread effectuant plusieurs traitement sur une image). j'aimerai initialement lancer le nombre de thread precisé par l'utilisateur simultanement sur des images differentes. Ensuite, dès qu'un thread à terminé de traiter son image, j'aimerai le quitter pour ensuite le lancer (ou en lancer un nouveau) sur l'image qui suit.
Voila pour le principe (j'espere que vous avez compris).
Plusieurs problèmes se posent :
- - Tout d'abord, seul le père à la liste des images à traiter, il doit donc communiquer à chaque thread qu'il execute, l'image qu'il doit traiter.
- Ensuite, le thread doit faire un resumer des resultats qu'il a obtenu pour le transmettre au père.
Faut-il commencer par faire quelque chose comme ça? :
sachant que "processOneImage" est une fonction qui traite une image.for (int i=0; i<nb_thread_a_lancer; i++)
{
AfxBeginThread( processOneImage, this);
}
Merci pour votre aide et vos conseils.

 

 
		
		 
         
 

 
			
			




 [MFC] multithread, communication père<->fils
 [MFC] multithread, communication père<->fils
				 Répondre avec citation
  Répondre avec citation
 
						 
  
  
  
 
 
   
 
 Envoyé par Joeleclems
 Envoyé par Joeleclems
					
				 tu veux dire que plusieurs threads vont modifer simultanément le même fichier??!
 tu veux dire que plusieurs threads vont modifer simultanément le même fichier??!


 
			 Malheureusement il n'y a pas tout, mais au moins tu as un début.
 Malheureusement il n'y a pas tout, mais au moins tu as un début.
						 ostMessage(TonParent->GetSafeHwnd,WM_FIN_THREAD,id du thread,0);
ostMessage(TonParent->GetSafeHwnd,WM_FIN_THREAD,id du thread,0);
Partager