Pthread_cond_signal yog dab tsi?
Pthread_cond_signal yog dab tsi?

Video: Pthread_cond_signal yog dab tsi?

Video: Pthread_cond_signal yog dab tsi?
Video: Переменные условия в C 2024, Kaum ib hlis
Anonim

Cov pthread_cond_signal () muaj nuj nqi yuav tsum unblock yam tsawg kawg yog ib tug ntawm cov threads uas yog thaiv nyob rau hauv cov ntaub ntawv teev cov xwm txheej kuj sib txawv cond (yog hais tias tej threads raug thaiv ntawm cond). Yog tias muaj ntau tshaj ib txoj xov raug thaiv ntawm ib qho kev hloov pauv, txoj cai teem sijhawm yuav tsum txiav txim siab qhov kev txiav txim uas cov xov tsis raug kaw.

Tsuas yog li ntawd, Pthread_cond_t yog dab tsi?

Kev piav qhia. Cov pthread_cond_wait () thiab pthread_cond_timedwait() muaj nuj nqi yog siv los thaiv ntawm ib qho kev hloov pauv. Lawv raug hu nrog mutex xauv los ntawm kev hu xov tooj los yog tus cwj pwm tsis meej yuav tshwm sim.

Tsis tas li ntawd, vim li cas Pthread_cond_wait xav tau mutex? Cov mutex yog siv los tiv thaiv tus mob sib txawv nws tus kheej. Yog vim li cas koj xav tau nws kaw ua ntej koj ua ib tos. Tom qab ntawd thaum cov xwm txheej hloov pauv tau raug teeb tsa lossis tshaj tawm rau, ib lossis ntau dua ntawm cov xov ntawm cov npe tos yuav raug tsa thiab mutex yuav tau tej yam yees siv kaw dua rau txoj xov ntawd.

Tsis tas li ntawd, koj siv cov kev hloov pauv li cas?

Hauv ib txwm siv , a mob kev qhia yog ntsuas raws li kev tiv thaiv ntawm mutex xauv. Thaum lub mob qhia tsis tseeb, xov blocks ntawm lub yam hloov pauv tau . Cov yam hloov pauv tau yog ces signaled los ntawm lwm cov xov thaum nws hloov lub mob tus nqi.

Pthread_mutex_t yog dab tsi?

pthread_mutex_t yog siv los tshaj tawm ib yam khoom ntawm hom mutex. li no: pthread_mutex_t mymutexvariable; Tom qab ntawd koj yuav siv lub mutex sib txawv los xauv thiab qhib lub mutex.

Pom zoo: