Learn how to implement concurrent programming in Go. Explore the roles of channels and goroutines in implementing concurrency. Topics include writing goroutines and implementing channels for communications between goroutines. Course activities will allow you to exercise Go’s capabilities for concurrent programming by developing several example programs.
Concurrency in Go
This course is part of Programming with Google Go Specialization
Instructor: Ian Harris
25,627 already enrolled
Included with
(740 reviews)
Details to know
Add to your LinkedIn profile
4 assignments
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
There are 4 modules in this course
This course introduces the concept of concurrency in Go. The first module sets the stage by reviewing the physical factors that can restrict microprocessor performance increases in the future.
What's included
2 videos5 readings1 assignment1 peer review
This module looks at basic concurrency concepts and race conditions in preparation for a discussion of threads coming up in the next module.
What's included
2 videos5 readings1 assignment1 peer review
In this module, you’ll work with threaded goroutines and explore the benefits of synchronization. The week’s assignment has you using a threaded approach to create a program that sorts integers via four separate sub-arrays, then merging the arrays into a single array.
What's included
3 videos7 readings1 assignment1 peer review
This last module ties together the various features – including threads, concurrency, and synchronization – covered in this course. The week’s programming assignment requires you to use concurrent algorithms in the implementation of the “dining philosopher’s problem and then address the ensuing synchronization issues.
What's included
3 videos8 readings1 assignment1 peer review
Instructor
Offered by
Recommended if you're interested in Software Development
Rice University
Coursera Project Network
University of California, Santa Cruz
École Polytechnique Fédérale de Lausanne
Why people choose Coursera for their career
Learner reviews
740 reviews
- 5 stars
76.01%
- 4 stars
17.38%
- 3 stars
3.50%
- 2 stars
1.61%
- 1 star
1.48%
Showing 3 of 740
Reviewed on Jan 29, 2020
Really helpful to understand and implement concurrent process in golang. Its clear my concept and idea about concurrency. Thanks again
Reviewed on Feb 12, 2023
Perfect explanation of the subject and very good activities that tests your knowledge and understating of the topics.
Reviewed on Jan 9, 2022
week 3 assignment needs a thorough review cause it lacks clarity ! week 2 assignment is also barely consistent with the related course (i.e week2)
New to Software Development? Start here.
Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy
Frequently asked questions
Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:
The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.