Go এর goroutines এবং channels একটি সুপ্রতিষ্ঠিত concurrency প্যাটার্ন এর সেট সক্ষম করে যা সাধারণ সমস্যাগুলির সমাধান করে — কাজ বিতরণ, fan-out/in, pipelines, এবং rate limiting। এই idiomatic প্যাটার্নগুলি জানা আপনাকে সঠিক, দক্ষ concurrent সিস্টেম তৈরি করতে দেয়।
Worker pool — সীমাবদ্ধ concurrency
{
wg sync.WaitGroup
w := ; w < numWorkers; w++ {
wg.Add()
{
wg.Done()
job := jobs {
results <- process(job)
}
}()
}
wg.Wait()
(results)
}
