Bonjour,
Voilà quelques jours qu'on me demande d'investiguer dans la programmation multi-threadée en C et plus particulièrement en PRO*C. Comme dans mon message précédent, je suis nouveau dans le monde professionnel et j'ai donc aucune expérience avec ce genre de technologie.
Les threads et la gestion de ceux ci n'est pas un problème. J'en ai déjà fait à l'école et refait ici pour faire des tests sur ma machine personnel.
Le problème que je rencontre ici c'est l’intégration de la librairie pthread en PRO*C. J'ai essayé bêtement de mettre un #include <pthread.h> dans mon fichier.pc mais j'ai l'erreur suivante :
Et ça continue encore pour 7 ou 8 bloc du même style. J'ai regardé un peu les Makefile qui sont là depuis longtemps, et apparemment dans le Makefile_precomp (fourni par oracle je suppose), il y'a déjà le lien -lpthreads.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
Première question, est ce que -lpthreads et -lpthread sont la même chose?
Ensuite, comme dans http://franckh.developpez.com/tutoriels/posix/pthreads/, j'ai rajouté à la main dans le Makefile c (on va l'appeler comme ça) le CFLAGS -D_REENTRANT :
Deuxième question, est-ce la bonne façon de faire (En sachant que ce "Makefile" là est appelé dans le vrai fichier appelé Makefile avec les commandes build etc etc)?
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Troisième question, est-ce que l'erreur que j’obtiens vient de ce genre de problème (Makefile défaillant) ou est-ce que cela peut venir d'autre chose?
Et finalement, est-ce que je grille les étapes? Faut-il faire autre chose avec le système de précompilation pour avoir accès à pthread? D'après http://www.csee.umbc.edu/portal/help...ads.htm#997960, je n'ai rien trouvé d'autres comme procédures à faire...
Je précise quand dans mon code source.pc, il n'y a pour le moment rien lié aux threads, la seul ligne est #include <phtread.h>.
Merci beaucoup d'avance,
Albin.
PS : Par investiguer je veux dire que cela n'a jamais été utilisé là où je travaille et donc que personne n'a la moindre expérience avec cela.
EDIT : Je sais meme pas à quoi sert le -D_REENTRANT vu qu'en vérifiant à ma machine de test les seules choses que je faisais c'était :
-#include <lpthread>
et gcc test.c -lpthread
Donc je suis paumé... pourtant pour autant que je sache, je developpe sous un environnement UNIX...

 

 
		
		 
         
 

 
			
			

 
 


 [PRO*C] Multi-threading avec pthreads
 [PRO*C] Multi-threading avec pthreads
				 Répondre avec citation
  Répondre avec citation
Partager