Bienvenue invité ( Connexion | Inscription )
Il est interdit de poster directement à la racine de ce forum.
Veuillez créer votre topic dans le sous-forum approprié.
3 Aug 2004, 23:21
Message
#1
|
|
![]() Méchant modérateur paranoïaque ![]() ![]() ![]() ![]() ![]() Groupe : Modérateurs Messages : 10 755 Inscrit : 24 Jan 2002 Lieu : Confoederatio Helvetica, Kanton Wallis Membre no 1 865 |
J'ai besoin de sémaphores.... avec des pthreads. Je m suis dis que le semaphore.h serait tout à fait judicieux.... mais voilà, c'est implémenté à moitié, faut passer par sem_open() et non sem_init() qui n'est pas implémenté
Y a quoi d'autre, parce qu'à coup de sem_open je n'arrive pas à m'en sortir, j'ai des erreurs dans tous les coins sur les sem_wait etc. -------------------- Nothing Else Matters
|
|
|
|
![]() |
5 Aug 2004, 07:06
Message
#2
|
|
![]() Macbidouilleur d'Or ! ![]() ![]() ![]() ![]() ![]() Groupe : Membres Messages : 1 779 Inscrit : 7 Jan 2003 Lieu : Montréal Membre no 5 496 |
Petit commentaire vis à vis du message plus haut : il est pas facile du tout (je suppose qu'il doit y avoir moyen en ligne de commande et en root, mais ....) d'effacer un sémaphore natif OSX créé par Xcode, si le code pour le détruire n'est pas dans l'appli elle même.
La dernière fois que j'ai utilisé des sémaphores, j'ai en fait rajouté le code pour les détruire jsute avant la déclaration pour les créer, ce qui simplifiait le problème (en débug pas à pas, j'allais pas m'amuser à attendre qu'un programme buggé aille exécuter le free sur les sémaphores, ça risquait de durer une petite infinité de temps). Voilà, c'était le conseil débile du jour. Mais ça m'avait économisé pas mal de prise de tête (et quelques kernels panic au début, quand je savais pas que les semaphores OSX étaient pas tout à fait comme les autres. Je trouve ça débile d'ailleurs que ça compile alors qu'une fonction est pas implémentée, je suppose que c'est pour pouvoir programmer multiplateforme, mais il devrait y avoir un warning quand on compile pour OSX !). Ce message a été modifié par guiguiguillaume - 5 Aug 2004, 07:06. -------------------- guigui - 15,2" et même 20 de plus pour laisser courir le tigre.
|
|
|
|
5 Aug 2004, 11:29
Message
#3
|
|
![]() Moderating Daemon ![]() ![]() ![]() ![]() ![]() Groupe : Modérateurs Messages : 6 345 Inscrit : 22 Feb 2004 Lieu : Yvelines/Cambridge (GB), dans mon pantalon Membre no 15 207 |
QUOTE(guiguiguillaume @ 5 Aug 2004, 08:06) Petit commentaire vis à vis du message plus haut : il est pas facile du tout (je suppose qu'il doit y avoir moyen en ligne de commande et en root, mais ....) d'effacer un sémaphore natif OSX créé par Xcode, si le code pour le détruire n'est pas dans l'appli elle même. La dernière fois que j'ai utilisé des sémaphores, j'ai en fait rajouté le code pour les détruire jsute avant la déclaration pour les créer, ce qui simplifiait le problème (en débug pas à pas, j'allais pas m'amuser à attendre qu'un programme buggé aille exécuter le free sur les sémaphores, ça risquait de durer une petite infinité de temps). Voilà, c'était le conseil débile du jour. Mais ça m'avait économisé pas mal de prise de tête (et quelques kernels panic au début, quand je savais pas que les semaphores OSX étaient pas tout à fait comme les autres. Je trouve ça débile d'ailleurs que ça compile alors qu'une fonction est pas implémentée, je suppose que c'est pour pouvoir programmer multiplateforme, mais il devrait y avoir un warning quand on compile pour OSX !). [right][snapback]799981[/snapback][/right] La fonction est, d'une certaine façon impémentée. Il y a le symbole qu'il faut dans la libSystem (j'ai vérifié avec nm). Donc pour le compilo/linker difficile de savoir que le code source de la fonction sem_init se résume à int sem_init(sem_t *, int, unsigned int){ return SEM_FAILED; } -------------------- G5 Bi 2GHz rev A, ATI X800 XT
Alu 17" rev A MacBook core duo 1.83 GHz |
|
|
|
dulrich semaphore.h 3 Aug 2004, 23:21
f_cam sem_init est facultatif.
Ca marche pas un truc du... 3 Aug 2004, 23:38
dulrich pb sem_wait: Bad file descriptor
sem.h c... 4 Aug 2004, 00:08
f_cam C'est bizarre ces sémaphores de chez sem_open... 4 Aug 2004, 00:32
dulrich merci
je me suis aussi fait avoir en oublant de ... 4 Aug 2004, 00:36
f_cam bein en tournant en tant que root tu pourras toujo... 4 Aug 2004, 00:47
dulrich y a une notion de rendez-vous en C ? 5 Aug 2004, 02:19
Driden QUOTE(dulrich1 @ 5 Aug 2004, 03:19)y a une no... 5 Aug 2004, 02:24
dulrich CODEint n = 2; /* Nombre de taches */
pthread_co... 5 Aug 2004, 02:33
Driden QUOTE(dulrich1 @ 5 Aug 2004, 03:33)mais je vo... 5 Aug 2004, 02:41
juli1- CITATION(dulrich @ 5 Aug 2004, 02:33) 799... 19 Dec 2007, 15:47
dulrich Bon ben j'ai réussis à obtenir ce que je vou... 5 Aug 2004, 04:49
SuperCed Pour info, mais je ne suis pas bien sur de moi là... 5 Aug 2004, 09:20
f_cam effectivement, avec plein de threads ça va pas ê... 8 Aug 2004, 22:44
dulrich QUOTE(f_cam @ 8 Aug 2004, 23:44)effectivement... 8 Aug 2004, 23:10
f_cam pour avoir des gros débits.
Ce mutex est global,... 8 Aug 2004, 23:24![]() ![]() |
| Nous sommes le : 2nd November 2025 - 20:57 |