Sobes.tech
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.