Skip to Content
Learning Functional Programming in Go
book

Learning Functional Programming in Go

by Lex Sheehan
November 2017
Intermediate to advanced
670 pages
17h 35m
English
Packt Publishing
Content preview from Learning Functional Programming in Go

Handling concurrency

We are managing our GetThisCar Goroutines by counting how many we've launched, and we leverage a WaitGroup variable to decrement that count when they complete. While it is true that many of our GetThisCar Goroutines execute in parallel, what's important is the way we handle their concurrency. Using the next iterator and the waitGroup variable, we are able to simply and effectively deal with their life cycle: starting with each Goroutine, receiving their results and closing carChannel when our counter indicates all the Goroutines are completed. Ever tried managing multiple threads of operation using Java or C++? Notice how we don't have to deal with managing mutexes and hard-to-debug race conditions? The ease of concurrency ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Learning Functional Programming

Learning Functional Programming

Jack Widman

Publisher Resources

ISBN: 9781787281394Supplemental Content