Thread le wait ne semble pas relocker
Fermé
math 2000
Messages postés
2605
Date d'inscription
dimanche 9 septembre 2007
Statut
Membre
Dernière intervention
7 mai 2016
-
Modifié par math 2000 le 27/10/2013 à 19:47
math 2000 Messages postés 2605 Date d'inscription dimanche 9 septembre 2007 Statut Membre Dernière intervention 7 mai 2016 - 12 nov. 2013 à 20:06
math 2000 Messages postés 2605 Date d'inscription dimanche 9 septembre 2007 Statut Membre Dernière intervention 7 mai 2016 - 12 nov. 2013 à 20:06
A voir également:
- Thread le wait ne semble pas relocker
- Facebook il semble que vous ne connaissez pas cette personne - Forum Facebook
- Il semblerait que votre profil ne correspondent pas en tous points à sa recherche ✓ - Forum Mail
- Il semble bizarre puisque chez lui ✓ - Forum Loisirs / Divertissements
- Il semble que nous ne prenions pas en charge ce format de fichier - Forum Photo numérique
- A start job is running for wait for network to be configured ✓ - Forum Ubuntu
2 réponses
Bonjour,
Il me semble que tes fonctions sont mal définies.
Les routines du thread prenne un argument, un pointeur sur n'importe quoi. On passe donc les paramètres par un pointeur. Là, il faut lire la documentation de pthread.
Ensuite, il me semble que le mutex n'est jamais créé. Ça pourrait expliquer certaines choses...
Enfin, pthread_join prend en paramètre un tableau de threads. Il n'est d'ailleurs pas judicieux de faire à la suite :
Bref, il faut lire la documentation de pthread et éventuellement regarder les exemples qui vont avec.
Il me semble que tes fonctions sont mal définies.
void *function1();
void *function2();
Les routines du thread prenne un argument, un pointeur sur n'importe quoi. On passe donc les paramètres par un pointeur. Là, il faut lire la documentation de pthread.
Ensuite, il me semble que le mutex n'est jamais créé. Ça pourrait expliquer certaines choses...
Enfin, pthread_join prend en paramètre un tableau de threads. Il n'est d'ailleurs pas judicieux de faire à la suite :
pthread_join( thread1, NULL);Il faut plutôt attendre les deux ensemble; c'est d'ailleurs le but de la fonction. Il faut stocker les threads dans un tableau.
pthread_join( thread2, NULL);
Bref, il faut lire la documentation de pthread et éventuellement regarder les exemples qui vont avec.
math 2000
Messages postés
2605
Date d'inscription
dimanche 9 septembre 2007
Statut
Membre
Dernière intervention
7 mai 2016
404
Modifié par math 2000 le 12/11/2013 à 20:12
Modifié par math 2000 le 12/11/2013 à 20:12
merci je vais tester celà mais je ne vois pas ce qu'il faut changer dans la déclaration de mes fonction qui sont en fait des procédures sans paramètre j
pour mon pointeur il est crée en tout début pthread_mutex_t count_mutex = PTHREAD_MUTEX_INITIALIZER;
pour mon pointeur il est crée en tout début pthread_mutex_t count_mutex = PTHREAD_MUTEX_INITIALIZER;