Čo je Pthread_cond_signal?
Čo je Pthread_cond_signal?

Video: Čo je Pthread_cond_signal?

Video: Čo je Pthread_cond_signal?
Video: Signaling for condition variables (pthread_cond_signal vs pthread_cond_broadcast) 2024, November
Anonim

The pthread_cond_signal () funkcia odblokuje aspoň jedno z vlákien, ktoré sú zablokované na zadanej premennej podmienky cond (ak sú nejaké vlákna zablokované na cond). Ak je v premennej stavu zablokovaných viac ako jedno vlákno, poradie, v ktorom sa vlákna odblokujú, určí politika plánovania.

Jednoducho, čo je Pthread_cond_t?

POPIS. The pthread_cond_wait Funkcie () a pthread_cond_timedwait() sa používajú na blokovanie stavovej premennej. Volajú sa s mutexom uzamknutým volajúcim vláknom alebo výsledkom bude nedefinované správanie.

Navyše, prečo Pthread_cond_wait potrebuje mutex? The mutex sa používa na ochranu samotnej premennej podmienky. Preto ty potrebu zamkla sa pred tebou robiť čakanie. Potom, keď je stavová premenná signalizovaná alebo vysielaná, jedno alebo viac vlákien na čakacom zozname sa prebudí a mutex bude pre toto vlákno opäť magicky uzamknuté.

Okrem toho, ako používate premenné podmienok?

V typickom použitie , a stave expresia sa vyhodnocuje pod ochranou zámku mutex. Keď stave výraz je nepravdivý, vlákno blokuje na stavová premenná . The stavová premenná je potom signalizované iným vláknom, keď zmení stave hodnotu.

Čo je Pthread_mutex_t?

pthread_mutex_t sa používa na deklarovanie objektu typu mutex. takto: pthread_mutex_t mymutexvariable; Potom by ste použili premennú mutex na uzamknutie a odomknutie mutexu.