Thread sous VC++

cs_Sigma Messages postés 38 Date d'inscription jeudi 27 mars 2003 Statut Membre Dernière intervention 30 novembre 2004 - 11 mars 2004 à 08:41
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 11 mars 2004 à 11:17
Hello all,
j'ai 2 question :
- Quel est l'utilité exact d'une thread ?
- Comment en integrer une dans VC++ ? Ce sont les meme codes que pour les autres compilateurs ? Ou bien faut il ecrire le code differement ? Si vous avez un tuto, je suis vraiment prenneur !

En esperant avoir des réponse !

4 réponses

Utilisateur anonyme
11 mars 2004 à 09:13
Un thread sert à executer plusieurs taches simultanément dans un processus.
Avec 3 threads, tu px executer 3 enchainements de commandes en meme temps...

Pour les mettre en oeuvre, cherche des exemples sur l'API CreateThread(), il faut lui passer en param l'addr de la fonction débutant le nouveau thread (principalement, y'a d'autres params aprés...)

vbnul
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
11 mars 2004 à 09:46
CreateThread ne devrait etre employe QUE si on prog en win32 (appels directs API) sans classes 'NEWees'.
Si le callback de thread contient des 'new' et autres appels de constructeurs sur des classes que le runtime C++ initialise, il risque fort d'y avoir fuites de memoire en sortie car le runtime n'en sera pas informe et donc destructeur non appele. Il faudra donc utiliser beginthreadex qui lui liberera correctement.
Voir Richter V4 chapitre 6 qui explique cela en detail.

ciao...
BruNews, Admin CS, MVP Visual C++
0
cs_Sigma Messages postés 38 Date d'inscription jeudi 27 mars 2003 Statut Membre Dernière intervention 30 novembre 2004 4
11 mars 2004 à 11:08
J'ai pas trop compris ce que tu disais BruNews... Tu parle a un débutant qui aprend gentilement... Mais merci pour les infos, et merci a toi aussi vbnul.

Je code avec VC++ 6 en utilisant les MFC. Je veux creer une boucle qui doit faire un grand nombre de calculs, et pour que sa ne plante pas, je voudrais allouer une petite partie de la mémoire RAM a cette boucle. J'avais cru comprendre qu'il faudrais que j'utilise des thread. C'est vrai ? ou faux ? Si non, je devrai utiliser quoi ? et les thread peuvent etre ecrit quand j'utilise les mfc et que je code pas en win32 ?
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
11 mars 2004 à 11:17
Alors tu dois utiliser les fonctions thread de MFC.

ciao...
BruNews, Admin CS, MVP Visual C++
0
Rejoignez-nous