Ano ang Pthread_cond_signal?
Ano ang Pthread_cond_signal?

Video: Ano ang Pthread_cond_signal?

Video: Ano ang Pthread_cond_signal?
Video: Signaling for condition variables (pthread_cond_signal vs pthread_cond_broadcast) 2024, Nobyembre
Anonim

Ang pthread_cond_signal () function ay dapat i-unblock ang hindi bababa sa isa sa mga thread na naka-block sa tinukoy na kondisyon variable cond (kung anumang mga thread ay naka-block sa cond). Kung higit sa isang thread ang na-block sa isang variable ng kundisyon, ang patakaran sa pag-iiskedyul ay dapat tukuyin ang pagkakasunud-sunod kung saan ang mga thread ay na-unblock.

Kaya lang, ano ang Pthread_cond_t?

PAGLALARAWAN. Ang pthread_cond_wait () at pthread_cond_timedwait() function ay ginagamit upang harangan ang isang variable ng kundisyon. Tinatawag ang mga ito nang may mutex na naka-lock ng thread ng pagtawag o magreresulta ang hindi natukoy na gawi.

Bukod pa rito, bakit kailangan ng Pthread_cond_wait ng mutex? Ang mutex ay ginagamit upang protektahan ang variable ng kundisyon mismo. Kaya ikaw kailangan naka-lock ito sa harap mo gawin isang paghihintay. Pagkatapos kapag ang variable ng kundisyon ay sinenyasan o nai-broadcast sa, isa o higit pa sa mga thread sa listahan ng naghihintay ay magising at ang mutex ay mahiwagang mai-lock muli para sa thread na iyon.

Higit pa rito, paano mo ginagamit ang mga variable ng kondisyon?

Sa tipikal gamitin , a kundisyon ang expression ay sinusuri sa ilalim ng proteksyon ng isang mutex lock. Kapag ang kundisyon mali ang expression, nakaharang ang thread sa variable ng kondisyon . Ang variable ng kondisyon pagkatapos ay sinenyasan ng isa pang thread kapag binago nito ang kundisyon halaga.

Ano ang Pthread_mutex_t?

pthread_mutex_t ay ginagamit upang ideklara ang isang bagay na may uri ng mutex. kaya: pthread_mutex_t mymutexvariable; Pagkatapos ay gagamitin mo ang mutex variable upang i-lock at i-unlock ang isang mutex.

Inirerekumendang: