Senior
Pessimist bloklama nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Pessimist kilidləmə, məlumatlara çoxsaylı girişin idarə olunması üçün yanaşmadır və bu zaman resurs əməliyyatın başlanğıcında dərhal kilidlənir ki, münaqişələr qarşısını alınsın. Yəni, bir tranzaksiya məlumatları dəyişmək istəyirsə, o, kilidi alır və digər tranzaksiyalar kilid açılana qədər gözləyir.
Go dilində, bu, paylaşılan məlumatlara girişin bloklanması üçün mutexlər (sync.Mutex) vasitəsilə həyata keçirilə bilər:
var mu sync.Mutex
func updateData() {
mu.Lock() // pessimist kilidləmə
defer mu.Unlock()
// kritik bölmə
}
Bu yanaşma, yalnız bir gorutinin məlumatları dəyişməsini təmin edir, lakin paralelliyi azalda və kilidlənmələrə səbəb ola bilər.