Go ના goroutines અને channels એક સમૃદ્ધ સમવર્તિતા પેટર્ન સેટ સક્ષમ કરે છે જે સામાન્ય સમસ્યાઓ હલ કરે છે — કામનું વિતરણ, fanning out/in, pipelines અને rate limiting. આ મુહાવરાતી પેટર્નને જાણવાથી તમે સાચી, કાર્યક્ષમ સમવર્તી સિસ્ટમ બનાવી શકો છો.
Worker pool — બંધાયેલ સમવર્તિતા
{
wg sync.WaitGroup
w := ; w < numWorkers; w++ {
wg.Add()
{
wg.Done()
job := jobs {
results <- process(job)
}
}()
}
wg.Wait()
(results)
}
