Bonjour,
j'ai écrit le petit code suivant :
Ce code marche impeccablement sous linux, compilation sans erreurs et warnings et execution comme je l'attend. Sous windows (dev-cpp), aucunes erreurs à la compilation mais à l'execution j'ai le droit à un segmentation fault.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 struct MyArgs { int idcur; int pagecur; }; void * v_page(void *p) { struct MyArgs *args = p; fprintf(fp,"aaaaaaaaaaaaa\n"); int idp = args->pagecur; fprintf(fp,"aaaaaaaaaaaaa\n"); int id = args->idcur; fprintf(fp,"pagecur : %d\n",idp); fprintf(fp,"idcur : %d\n",id); } void * start_site(int id) { struct MyArgs args; int i = 0; args.idcur = id; args.pagecur = i; if(pthread_create(&threadss[id].thread, NULL, v_page, &args)) { perror("pthread_create"); exit(EXIT_FAILURE); } return NULL; }
Apparemment il n'arrive pas à acceder au champs de ma structure.
Vu que je ne maitrise pas bien le debugger, j'ai mis des fprintf pour voir ou ca planté et voila ce que m'affiche le programme avant de planter :
Voila je ne sais absolument pas comment résoudre ce problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 aaaaaaaaaaaaa
A noter que c'est une application GTK.
Merci d'avance si vous avez des idées.
Partager