Probleme avec semaphores

Probleme avec semaphores - C - Programmation

Marsh Posté le 29-12-2003 à 21:39:57    

Voila, j'ai creer differents programme qui accedent a un segment de memoire partagee et il faut que j'utilise des semaphores pour eviter d'avoir des problemes lors de certains acces a la memoire.
 
Comment faire pour creer un sempahore pour qu'il puisse etre utilise par mes differents programmes ?
 
avec

Code :
  1. sem_init(&sem,1,1)

ca ne marche pas  [:morpheus67]  
Il faut bien meme un chiffre different de 0 dans le 2eme argument de sem_init pour que le semaphore puisse etre utilise par mes differents programmes ?

Reply

Marsh Posté le 29-12-2003 à 21:39:57   

Reply

Marsh Posté le 29-12-2003 à 21:45:37    

[:ark]

Reply

Marsh Posté le 29-12-2003 à 21:46:20    

Code :
  1. #include <semaphore.h>   int  sem_init  (    sem_t         *sem,    int            pshared,    unsigned int   value );
  2. Parameters
  3. sem
  4. (IN) Points to the semaphore to initialize. Returns SEM_FAILED if the initialization fails.
  5. pshared
  6. (IN) Specifies whether the semaphore can be shared. This feature is unsupported on NetWare and this parameter must be set to NULL.
  7. value
  8. (IN) Specifies the number of resources that the semaphore will protect and control.

Reply

Marsh Posté le 29-12-2003 à 21:46:34    

donc value vaut au moins 2...

Reply

Marsh Posté le 29-12-2003 à 21:52:56    

dès que je donne une valeur != 0 à pshared, ca me fait une erreur de segmentation...
Comprend pas :??:


Message édité par morpheus67 le 29-12-2003 à 21:53:27
Reply

Marsh Posté le 29-12-2003 à 21:54:29    

oui, je connais :D , j'ai cherche mais ca ne m'a pas aide :(

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed