Skip to content

Latest commit

 

History

History

session-04

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

04. Concurrency

This lecture provides a background on the OS process abstraction. It then introduces the concept of concurrency and concurrent programming. Finally it presents Go's CSP concept using several examples in Go.

Outline

  1. Processes and Threads
    • OS Basics
    • Synchronization Mechanisms
  2. Concurrency
  3. Concurrent Design in Go
  4. goroutines and channels
  5. Examples
    • Load Balancer
    • Query a Replicated Database
  6. Beyond Single Nodes

Readings

Questions

  1. What is the difference (besides the syntax) of the concurrency model presented in Hoare's paper and the one implemented in Go?
  2. Investigate how the HTTP server in Go is implemented. How does it handle multiple requests?

Hands-on

  1. Hands-on-01

Further Readings

On Concurrency in Go