Bazı koşul değişkenlerinin "cond", muteks değişkeni "mutex" ile ilişkilendirildiğini varsayalım. pthread_cond_wait(&cond,&mutex)
arandığında cond
'da bir iş parçacığı uyuyorsa ve mutex
kilitli başka bir iş parçacığı bittiğinde, iş parçacığının pthread_cond_signal(&cond)
numaralı telefonu arayarak pthread_mutex_unlock(&mutex)
numaralı telefonu arayabilmesinden mi veya sonra mı aradığı fark eder mi? Eğer uyku ipliği muteks kazanırsa, pthread_cond_signal(&cond)
'u çağırırsa muteksin kilidini açmaya bile gerek duyuyor mu?Bir koşul değişkeninin işaretlenmesi (pthreads)
DÜZENLEME: https://computing.llnl.gov/tutorials/pthreads/#ConVarOverview'a göre, "pthread_cond_signal() çağrıldıktan sonra muteksin kilidini açmamak, eşleşen bir pthread_cond_wait() rutininin tamamlanmasına izin vermeyebilir (engellenir)." Sanırım o zaman, kilidin açılması ve belki de sonradan yapılması gerekiyor.
+1. –