Ero Mutex ja Semaphore



Mutex vs Semaphore

Mutex on analoginen yksi avain huoneeseen. Henkilö, jolla avain, joka on analoginen kierre, on ainoa, joka voi saada huoneeseen. Henkilö, jolla on pääsy on sitten luopua avain seuraavalle henkilölle linjassa. Siksi mutex voidaan vapauttaa lanka, joka hankkii sen.

Mutex käytetään tavallisesti sarjanumeroinnissa pääsyä osan sisäänpistävä koodin '' eräänlainen koodi, joka ei voi suorittaa useita säikeitä kerralla. Vain yksi lanka on päästetty osio. Tämä pakottaa muut ketjut jonossa odottamaan. Ennen kierre saa pääsyn, sen on odotettava kunnes lanka ennen kuin se luopuu osiossa.

Käyttämällä samaa analogisesti mutex, semaforit ovat useita samanlaisia ​​avaimia, jotka voivat saada samat määrä samanlaisen huoneen lukot. Semafori tai arvon semaforin count riippuu ihmisten määrä (säikeet), jotka tulevat tai poistua huoneesta. Jos on 5 huonetta ja ne ovat kaikki käytössä, niin viittoilemalla määrä on nolla. Jos kaksi poistua huoneesta, niin määrä on kaksi ja molemmat avaimet annetaan seuraavan kahden jonossa.

Että on sanottu, semaforit voidaan samanaikaisesti signaloida mitään lanka tai prosessin ja ovat ihanteellisia sovelluksiin, jotka vaativat synkronointia. Kuitenkin semaforit käytetään tehokkaasti rajoittaa samanaikaisten käyttäjien yhteinen resurssi, joka perustuu maksimi viittoilemalla count.

Joten periaatteessa, mutex voidaan pitää semafori, jonka arvo on yksi.

Vähennys ja lisäys semaforin ovat riippuvaisia ​​siitä, onko kierteet pyytävät pääsyn yhteisiin resurssin tai jättää osassa.



Teoriassa muteksi ja (binary) semaforeja semanttisesti similar.The toteuttamiseen mutex voidaan tehdä semaforeja ja niin on päinvastoin. Kuitenkin käytännön järkeä, ne voivat olla hieman erilainen.

Mutexes on tarkoitus soveltaa poissulke vain ja binary semaforit on tarkoitettu käytettäväksi poissulke ja tapahtuman ilmoituksen. Vaikka ne ovat hyvin samankaltaisia ​​niiden täytäntöönpanoon ja yleisen semantiikan, niitä käytetään eri tavoin.

Yhteenveto:

1. Mutex käytetään tyypillisesti sarjanumeroinnissa pääsyn yhteisenä resurssina, kun semafori on useita samanaikaisia ​​vierailuja.

2. Mutex on kuin viittoilemalla jossa lasken yhden.
3. Mutex sallii vain yhden säikeen saada samalla semaforeista voidaan samanaikaisesti signaloida mitään lanka tai prosessi.