Junior — Middle
Əvvəlki vaxtda bağlanmış kanalı bağlamağa çalışsanız, nə gözlənilir?
sobes.tech Süni İntellekt
AI-dan cavab
Go-da, artıq bağlanmış bir kanalı bağlamağa cəhd etmək panik (panic) ilə nəticələnir.
Kanal yalnız bir dəfə bağlana bilər, bu, daha çox dəyər göndərilməyəcəyini siqnallamaq üçün.
Əgər close(ch) funksiyasını eyni kanal üçün təkrar çağırırsınızsa, proqram qəza ilə sona çatacaq.
Nümunə:
ch := make(chan int)
close(ch) // düzgün
close(ch) // panic: close of closed channel
Bu səbəbdən, kanalın yalnız bir dəfə bağlandığından əmin olmaq vacibdir.