OVH Cloud OVH Cloud

Pb avec des threads

3 réponses
Avatar
David Roman CESR
J'ai un programme qui lance des threads.
Et ce matin il veut plus rien savoir ???

void *CheckDouble (void *Key){}

main () {
...
...
pthread_t thread_id;
...
...
erreur=pthread_create(&thread_id,NULL,CheckDouble,(void *) Key);
}

Il me renvoie erreur=-1 et errno=0 ... Kes Ki Me Veu lui ????

3 réponses

Avatar
David Roman CESR
David Roman CESR wrote:

J'ai un programme qui lance des threads.
Et ce matin il veut plus rien savoir ???

void *CheckDouble (void *Key){}

main () {
...
...
pthread_t thread_id;
...
...
erreur=pthread_create(&thread_id,NULL,CheckDouble,(void *) Key);
}

Il me renvoie erreur=-1 et errno=0 ... Kes Ki Me Veu lui ????


Desole j'ai oublier -lthread a la compil

Merci

Avatar
Daniel Déchelotte

| J'ai un programme qui lance des threads.
| Et ce matin il veut plus rien savoir ???

Chez moi ca marche.

10:53:48 ~ $ cat test.c
#include <pthread.h>
#include <stdio.h>

void *CheckDouble (void *Key){ return NULL; }

int main (void) {
pthread_t thread_id;
void *Key = NULL;
int erreur = pthread_create (&thread_id, NULL, CheckDouble, (void *) Key);
printf ("%dn", erreur);
return erreur;
}
10:53:51 ~ $ gcc -W -Wall -O2 -o go test.c -lpthread
test.c: In function `CheckDouble':
test.c:4: warning: unused parameter `Key'
10:53:53 ~ $ ./go
0

Daniel
--
http://yo.dan.free.fr/
Avatar
Laurent Wacrenier
David Roman CESR écrit:
erreur=pthread_create(&thread_id,NULL,CheckDouble,(void *) Key);
}

Il me renvoie erreur=-1 et errno=0 ... Kes Ki Me Veu lui ????


Desole j'ai oublier -lthread a la compil


bizzare que pthread_create ne soit pas défini dans la libthread chez
toi.