Junior — Middle
თუ ცდილობთ დახუროთ უკვე დახურული არხი, რა ქცევა უნდა იყოს მოსალოდნელი?
sobes.tech AI
პასუხი AI-სგან
Go-ში, უკვე დახურული არხის დახურვის მცდელობა იწვევს პანიკას.
არხი შეიძლება დაიხუროს მხოლოდ ერთხელ, რათა ითქვას, რომ მეტი მნიშვნელობა აღარ იქნება გადმოცემული.
თუ განმეორებით გამოიძახეთ close(ch) იგივე არხისთვის, პროგრამა დაუყოვნებლივ შეწყდება შეცდომით.
მაგალითი:
ch := make(chan int)
close(ch) // სწორია
close(ch) // panic: close of closed channel
ამიტომ მნიშვნელოვანია კონტროლი, რომ არხი მხოლოდ ერთხელ დაიხუროს.