Junior — Middle
Məlumatların ötürülmə sistemində tamponlu kanal istifadə edərkən hansı şərtlərdə bloklama baş verir?
sobes.tech Süni İntellekt
AI-dan cavab
Go-da, tamponlu kanal iki əsas halda bloklanır:
-
Kanalə yazarkən (göndərmə): əgər kanalın tamponu doludursa (yəni, kanalın element sayı onun tutumuna çatıbsa), yeni dəyər göndərməyə cəhd goroutine-i bloklayır, ta ki, kimsə kanaldan oxuyub yer boşaltsın.
-
Kanaldan oxuyarkən: əgər kanal boşdursa (oxumaq üçün element yoxdursa), kanaldan oxumağa cəhd goroutine-i bloklayır, ta ki, kimsə yeni dəyər göndərsin.
Beləliklə, bloklama, dolu tampona məlumat göndərməyə və ya boş tampondan oxumağa cəhd edərkən baş verir.