Sobes.tech
Junior — Middle

როგორ შეიძლება დასრულდეს სამუშაო არხთან პროგრამაში?

sobes.tech AI

პასუხი AI-სგან

Go ენაში, არხთან მუშაობის დასრულებისთვის გამოიყენება ფუნქცია close(). არხის დახურვა სიგნალს უგზავნის მიმღებთა, რომ მეტი ახალი მნიშვნელობა აღარ იქნება გადაგზავნილი. არხის დახურვის შემდეგ, მისში გაგზავნის მცდელობა გამოიწვევს პანიკას, მაგრამ დახურულ არხიდან კითხვა შესაძლებელია — ის დაბრუნებს ნულოვან მნიშვნელობას და false მეორე დაბრუნებულ პარამეტრად.

მაგალითი:

ch := make(chan int)
ngo func() {
    ch <- 42
    close(ch) // არხის დახურვა გაგზავნის შემდეგ
}()

for val := range ch {
    fmt.Println(val) // გამოიტანს 42
}

ამიტომ, არხთან მუშაობის დასრულებისთვის საჭიროა გამოიძახოთ close(channel).