Mi az a Pthread_cond_signal?
Mi az a Pthread_cond_signal?

Videó: Mi az a Pthread_cond_signal?

Videó: Mi az a Pthread_cond_signal?
Videó: Vomberg István: Többszálú (multi threaded) programozás Linux környezetben 2024, November
Anonim

Az pthread_cond_signal () függvénynek fel kell oldania legalább az egyik szál blokkolását, amely a megadott kondícióváltozón blokkolva van (ha a kondíción blokkolt szálak vannak). Ha egy feltételváltozónál egynél több szál blokkolva van, az ütemezési házirend határozza meg a szálak feloldásának sorrendjét.

Egyszerűen, mi az a Pthread_cond_t?

LEÍRÁS. Az pthread_cond_wait A () és pthread_cond_timedwait() függvények a feltételváltozók blokkolására szolgálnak. Meghívásuk a hívó szál által zárolt mutex-szel történik, különben meghatározatlan viselkedés következik be.

Ezenkívül miért van szüksége a Pthread_cond_wait-nak mutexre? Az mutex magának a feltételváltozónak a védelmére szolgál. Ezért te szükség bezárult előtted csináld várják. Ezután amikor a feltételváltozót jelezzük vagy sugározzuk, a várólistán lévő szálak közül egy vagy több felébred, és a mutex varázsütésre ismét zárolva lesz ahhoz a szálhoz.

Továbbá hogyan használja a feltételváltozókat?

Tipikusan használat , a állapot kifejezést mutex zár védelme alatt értékelik ki. Amikor az állapot kifejezés hamis, a szál blokkolja a feltétel változó . Az feltétel változó majd egy másik szál jelzi, amikor megváltoztatja a állapot érték.

Mi az a Pthread_mutex_t?

pthread_mutex_t mutex típusú objektum deklarálására szolgál. és így: pthread_mutex_t mymutexvariable; Ezután a mutex változót használhatja a mutex zárolására és feloldására.