implémentation semaphore POSIX 1.b

implémentation semaphore POSIX 1.b - C++ - Programmation

Marsh Posté le 05-01-2003 à 11:50:24    

je suis entrain de faire des appli multithreadées et je me pose des questions sur l'implémentation de sémaphores P1.b et sur leur utilisation vis à vis des mutex. Ma question n'est pas quand utiliser l'un ou l'autre.
 
des fois, j'emploie un semaphore binaire et je me dis qu'un mutex conviendrait tout aussi bien. bon evidemment, pthread_mutex_lock, c'est plus long à écrire que sem_wait, c''est pour ça que j'ai utilisé plus de semaphore que de mutex. Les semaphores s'appuie-t-il sur les mutex, auquel cas, les mutex seuls sont plus performants? je suis clair? c'est peut etre con comme question, mais bon :D

Reply

Marsh Posté le 05-01-2003 à 11:50:24   

Reply

Marsh Posté le 05-01-2003 à 15:32:50    

Drapal par curiosité parce que j'ai toujours pas compris la différence entre semaphore et mutex.

Reply

Marsh Posté le 05-01-2003 à 15:35:36    

je crois que tu as oubblié un  ":D"

Reply

Marsh Posté le 05-01-2003 à 15:38:41    

++Taz a écrit :

je crois que tu as oubblié un  ":D"  


 
Semaphore et Mutex ça n'a rien a voir !
 
 Une semaphore de permet de partager des ressources et pour cela tu utilises une Mutex qui est en fait une ressource au pshared à 1 !
 
 Sous Linux on est obligé d'utiliser des pthread car les semaphores ça craind un max sous Linux

Reply

Marsh Posté le 05-01-2003 à 15:46:25    

t'es sur qu'on parle des meme? mo je te parle des sem_* et pas des sem*
 
les semaphores dont je parle marche au poil et leur usage est ultra simple
 
 
edit: en fait, parmi mes semaphores certains sont binaires et mon code ressemble alors à ça
 

Code :
  1. sem_wait()
  2. // faire semblant de travailler
  3. sem_post()


 
est ce que pour des raisons de sémantique ou de performance (ou autre) je ferais mieux dans ce cas la de faire
 

Code :
  1. pthread_mutex_lock()
  2. // faire semblant de travailler
  3. pthread_mutex_unlock()


 
on peut aussi résumer :est ce qu'on a interet a remplacer ses semaphores binaires par des mutex?


Message édité par Taz le 05-01-2003 à 16:01:09
Reply

Sujets relatifs:

Leave a Replay

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