Thread en C++builder

hkari Messages postés 2 Date d'inscription dimanche 24 décembre 2000 Statut Membre Dernière intervention 12 novembre 2008 - 12 nov. 2008 à 20:06
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 13 nov. 2008 à 13:34
bonjour


je travaille dans windows et  je débute dans la programmation des threads en C++builder. j'ai utilisé la fonction suspend et resume pour mettre en attente l'éxécution de mon thread.

dans mon travail, le thread B a besoin d'une liste remplie par le thread A. pour cela j'ai utilisé j'ai suspendu le thread B ( en utilisant la fonction suspend dans son run) et je l'ai relancé en utilisant la fonction resume dans le run du thread A.
 
le probléme qui se pose c'est que j'ai un message de violation d'accés, alors que dois-je faire? et es-ce les bonnes fonctions que j'utilise??

merci de vitre aide 

1 réponse

cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
13 nov. 2008 à 13:34
Salut,

Suspend, c'est moyen : le thread peut s'arrêter n'importe où... Genre c'est un peu comme si tu courais et que l'on te demandais de te figer d'un coup. Tu serais en l'air ou en position de déséquilibre.

Il vaut mieux que le thread à suspendre teste périodiquement une variable ou attende un évènement. Pour revenir à la course à pied, c'est un peu comme si tu t'arrêtait tous les dix pas pour regarder si tu devais te figer.

Quoiqu'il en soit, la création ou la suspension de threads ne peuvent pas être des causes directes de violation d'accès. Ton code doit avoir un problème quelque part.
0
Rejoignez-nous