Questions that comes to all Developers is whether they are utilising the available Computing resource efficiently?
Course Overview
The course could be divided into five parts.
Concurrency Primitives
Deep Dive into Concurrency Primitives
Concurrency Patterns
Context Package
Bonus Section - Interfaces
In the course we try to answer these questions.
Concurrency Primitives
Questions that comes to all Developers is whether they are utilising the available Computing resource efficiently?
Course Overview
The course could be divided into five parts.
Concurrency Primitives
Deep Dive into Concurrency Primitives
Concurrency Patterns
Context Package
Bonus Section - Interfaces
In the course we try to answer these questions.
Concurrency Primitives
What are the limitations of Threads?
What are advantages of goroutines over OS threads?
How do we avoid race condition?
How Channels are used to communicate data?
How do we implement timeout and non-blocking communication?
When do we use mutex and channels?
How to synchronise execution of goroutines?
How to detect race condition in Go?
Deep Dives into Concurrency Primitives
How Go scheduler works?
How does context switching works?
How channel send and receive works underneath?
Concurrency Patterns
How to construct streaming pipelines with Goroutines and Channels?
How to Fan-out and Fan-in computationally intensive stages?
How do we avoid Goroutine Leaks?
Context Package
How we can propagate request scoped data and cancellation signal across API boundaries?
Coding Exercises
Each concept is followed by a Coding Exercise.
Exercises blueprint are shared on Github.
Sample Applications
We will build
Blueprint of web crawler.
Image processing pipeline.
HTTP Server Timeouts with Context Package.
Bonus Section - Interfaces
How to define common behaviour between different objects as abstract type?
How Interface provides an abstraction for higher level functions?
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.