Go Concurrency Patterns

Concurrency is hard, but Go makes it manageable

5 October 2021

Tiago "Myhro" Ilieve

Software Engineer, Toggl

Introduction

Concurrency is hard. It doesn't matter if you're a novice or an expert: even experts regularly get it wrong.

Kenton Varda - Protobuf/Cap'n Proto creator, Cloudflare Workers Tech Lead

2

Channels

3

Channels (cont.)

4

Synchronization Packages

sync

sync/atomic

5

Conclusion

6

References

  1. Cloudflare Blog - Durable Objects: Easy, Fast, Correct - Choose three
  2. Go by Example: Non-Blocking Channel Operations
  3. Golang UK Conference 2017 | Arne Claus - Concurrency Patterns in Go
  4. Stack Overflow - What are channels used for?
7

Thank you

Tiago "Myhro" Ilieve

Software Engineer, Toggl

Use the left and right arrow keys or click the left and right edges of the page to navigate between slides.
(Press 'H' or navigate to hide this message.)