Middle+
მითხარი WaitGroup-ის შესახებ Go-ში.
sobes.tech AI
პასუხი AI-სგან
Go ენაში, sync.WaitGroup გამოიყენება ჯგუფის goroutine-ების დასრულების მოსალოდნელობისთვის. ეს კომფორტული გზაა პარალელური დავალებების სინქრონიზაციისთვის.
ძირითადი მეთოდები:
Add(int)— ზრდის მოსალოდნელი goroutine-ების რაოდენობას.Done()— ამცირებს გამოთვლას, როდესაც goroutine დასრულდება.Wait()— ბლოკავს შესრულებას მანამ, სანამ გამოთვლა არ გახდება ნული.
გამოყენების მაგალითი:
var wg sync.WaitGroup
wg.Add(2) // ველით 2 goroutine-ს
go func() {
defer wg.Done()
// პირველი goroutine-ის სამუშაო
}()
go func() {
defer wg.Done()
// მეორე goroutine-ის სამუშაო
}()
wg.Wait() // ველით ორივეს დასრულებას
ამ გზით, WaitGroup ეხმარება პარალელური ოპერაციების დასრულების კონტროლში.