Pthread_cond_wait neden bir mutekse ihtiyaç duyar?
Pthread_cond_wait neden bir mutekse ihtiyaç duyar?

Video: Pthread_cond_wait neden bir mutekse ihtiyaç duyar?

Video: Pthread_cond_wait neden bir mutekse ihtiyaç duyar?
Video: Senkronizasyon ve Çekirdek Nesneleriyle İletişim - Özgür Aytekin 2024, Kasım
Anonim

NS muteks koşul değişkeninin kendisini korumak için kullanılır. bu yüzden sen ihtiyaç senden önce kilitlendi yapmak bir bekleyiş. Ardından, koşul değişkeni sinyallendiğinde veya yayınlandığında, bekleme listesindeki bir veya daha fazla iş parçacığı uyandırılacak ve muteks o iş parçacığı için sihirli bir şekilde tekrar kilitlenecek.

Bununla ilgili olarak, Pthread_cond_wait muteksin kilidini açar mı?

NS pthread_cond_wait () işlevi, koşul değişkeninde çağıran iş parçacığını engeller ve kilidini açar Ilişkili muteks muteks . Çağıran iş parçacığı kilitlenmiş olmalı muteks koşul değişkenini beklemeden önce. Fonksiyondan dönüşte, muteks tekrar kilitlenir ve çağıran iş parçacığına aittir.

Daha sonra soru, mutekse neden ihtiyaç duyulduğudur. Bir seferde yalnızca bir iş parçacığının önemli bir kod parçasını yürütmesini sağlar ve bu da bir veri yapısına erişimi sınırlar. Herhangi bir CPU yeniden sıralamasından bağımsız olarak her iki iş parçacığının da o belleğin tam ve doğru bir görünümüne sahip olmasını sağlar. NS muteks eşzamanlı programlama yaparken mutlak bir zorunluluktur.

Yukarıda ayrıca, koşul değişkenlerinin neden mutekse ihtiyacı var?

NS muteks korumak için kullanılır koşul değişkeni kendisi. bu yüzden sen ihtiyaç senden önce kilitlendi yapmak bir bekleyiş. Sonra ne zaman koşul değişkeni bekleme listesindeki bir veya daha fazla iş parçacığına sinyal verildi veya yayınlandı niyet uyandırılmak ve muteks olacak o iş parçacığı için sihirli bir şekilde tekrar kilitlen.

Neden koşul değişkenlerine ihtiyacımız var?

Koşul değişkenleri bir dizi ipliğin gıdıklanana kadar uyumasına izin verin! Uyuyan bir ipliği veya tüm konuları gıdıklayabilirsiniz. Yalnızca bir iş parçacığını uyandırırsanız, işletim sistemi hangi iş parçacığının uyanacağına karar verir.

Önerilen: