begin process at 2012 05 28 21:31:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

GUI

 > 

Envoie à des threads


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Envoie à des threads

vendredi 21 mars 2008 à 21:56:25 | Envoie à des threads

mohdaef

Bonjour à tous.

Je m'adresse à vous car j'ai un problème avec des threads et plus précisément avec le passage d'informations a partir d'un thread vers plusieur autres. Je travaille sous Code::Blocks avec les APIs Windows et je tiens à  préciser que je débute à peine en ce qui concerne la programmation multi-thread et que je n'ai vu que la théorie jusqu'a présent je ne connait donc aucune fonctions.
La situation est la suivante, mon programme principal lance un thread, qui a son tour va lancer plusieur autre threads qui auront une durée de vie relativmen tcourte. à la création de ces thread j'ai besoin de leur envoyer plusieur information comme son propre HANDLE ainsi que des entiers. Ces threads sont générés séquentiellement par une boucle et doivent recevoir ces information juste après leur création, je me doute qu'il faudras qu'il soit en attente jusqu'a qu'il les recoivent.

    Si quelqu'un pouvait m'expliquer assez précisément comment faire ceci je l'en remercie d'avance.

Merci.
vendredi 21 mars 2008 à 23:06:29 | Re : Envoie à des threads

juju12

Tu peux utiliser PostThreadMessage() par exemple, et au début de chaque thread tu mettras une boucle d'attente de message.
samedi 22 mars 2008 à 12:42:11 | Re : Envoie à des threads

mohdaef

Bonjour.

Je vois vois ce qu'il faut faire, dans ma boucle de création de threads je fait un PostThreadMessage() juste après la création d'un thread, si j'ai bien compris dans PostThreadMessage() les threads sont identifés par la variable de type DWORD que l'on à utiliser lors de sa créaction. Il est possible que je me trompe car je n'arrive pas du tout à envoyer de messages.
    Serait-il possible d'avoir un exemple pour l'envoie des message et la boucle d'attente de message ?

Merci d'avance pour votre aide.
samedi 22 mars 2008 à 14:41:09 | Re : Envoie à des threads

mohdaef

Bonjour.

C'est bon j'ai trouver un autre moyen pour passer des information au threads à leur créations.

Merci pour ton aide.
samedi 22 mars 2008 à 22:58:44 | Re : Envoie à des threads

mohdaef

Bonsoir.

Parcontre j'ai un autre soucis dans le même style je veux envoyer une structure à un thread je procède comme cela :
hthread[j] = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)Fonction,&structure,0,&dwid);
Pour récupérer la structure dans le thread je procède ainsi :
long WINAPI Fonction (structure* mastructure)
{
    afficher(mastructure -> ..);.
}
Lorsque je veux lire les champs de ma structure ils sont vide, je doit louper une étape quelque part, si quelqu'un pourvais m'aider...

Merci.
mardi 25 mars 2008 à 12:47:27 | Re : Envoie à des threads

hydargos

perso, je créé un pointeur de structure, j'alloue la mémoire avec malloc, puis je passe le pointeur de structure au thread, la, aucuns problemes.
Puis dans le trhread, je recréé un pointeur de structure que je remplis ....

DWORD WINAPI thrd (LPVOID lParametre) <- déclaration du thread

dans le thread:


ParamThread *parametres;
parametres=(ParamThread*)lParametre;



Cette discussion est classée dans : envoie, thread, plusieur, threads, précisément


Répondre à ce message

Sujets en rapport avec ce message

Threads et heap privé [ par mzhunix ] Salut à tous,je crée un heap privé "hHeapPrivate" dans le thread principale avec HeapCreate j'alloue quelques pointeurs dessus puis je crée un autre t timer dans des threads [ par z3bul0n ] Comment faire pour gérer un SetTimer créé dans un thread sans utiliser de fonction : j'aimerai recevoir le WM_TIMER à chaque fois qu'il y en a un dans Envoyer plusieur variable a un thread [ par petitchech ] BonjourComment faire pour envoyer plusieur variable a un thread. probleme avec les thread [ par macnao ] bonjour, je n'arrive pas à utiliser des threads avec builder 6, c'est a dire que je dois créer trois threads et ils doivent tourner en boucles, je sui Economise le temps machine [ par maddoc2 ] Bonsoir,Je suis en train de développer une application sous Windows dans laquelle des données à collecter ont deux origines possibles. Chaque origine Threads 2, le retour! [ par goondy ] Bon, grace a vecchio56, j'ai pu claquer mon thread comme il fallait (cf http://cppfrance.com/forum.v2.aspx?ID=349494&nb=9).J'explique le truc : j'ai u probleme avec les threads [ par chedly_ensi ] Bonjour, j'ai un code source que je dois comprendre, en suivant les instructions, je trouve dans l'un des fichiers: ////////////////////////////////// Threads + Reseau [ par Zootella ] Salut Voila j'ai fait une passerelle reseau, elle connecte les clients aux serveurs qu'ils veulent. Tout marche bien, mais le programme utilise 99% Help (threads) [ par loicus ] Bon, bhen voila.. j'essaye de faire un threadj'aimerais ouvrir la fonctions LCD_BootScreen() dans un thread, donc j'utilise cette fonction :thboot= Cr Help (threads) [ par loicus ] Bon, bhen voila.. j'essaye de faire un threadj'aimerais ouvrir la fonctions LCD_BootScreen() dans un thread, donc j'utilise cette fonction :thboot= Cr


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,435 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales