World Congress 2021 Jun 28, 2021

Concurrency with Go

Frank Müller

Stop fighting error-prone threads and mutual exclusion locks. Go's native concurrency primitives let you build elegant, thread-safe architectures by communicating across channels instead of sharing memory.

Pause
Mute Enter Fullscreen
#1 about 4 min

Modeling software architecture on natural concurrent ecosystems

Approaching system design by observing how independent natural agents interact and co-exist.

#2 about 4 min

Evolution of multi-core hardware and computing processes

Utilizing modern multi-core processors efficiently requires rethinking thread-based abstractions.

#3 about 3 min

Encapsulating state for sequential processing via messages

Building reliable applications relies on isolating state manipulation and communicating through fixed interfaces.

#4 about 2 min

Understanding concurrency against parallelism in application execution

Differentiating simultaneous execution from the composition of independently executing architectural processes.

#5 about 2 min

Historical concurrency models from actors to sequential processes

Applying established theories like the actor model and sequential communicating processes to modern programming concepts.

#6 about 13 min

Patterns for structurally organizing complex concurrent architecture

Structuring complex systems leveraging service providers, worker pools, and event managers.

#7 about 4 min

Multi paradigm language design principles in Go

Leveraging implicit interfaces and function types alongside traditional imperative language structures.

#8 about 5 min

Orchestrating concurrent routines with channels and goroutines

Organizing lightweight execution environments utilizing typed, synchronous, and buffered communication primitives.

#9 about 4 min

Launching background execution contexts utilizing anonymous functions

Spawning background operations while maintaining strict encapsulation of arguments and local state.

#10 about 4 min

Coordinating execution completion across multiple active goroutines

Utilizing wait groups to synchronize caller execution with the successful completion of deferred background jobs.

#11 about 3 min

Streaming and processing continuous data via directional channels

Enforcing data flow boundaries and safely terminating operations by explicitly closing communication streams.

#12 about 4 min

Chaining sequential processors through piped concurrent transformations

Cascading specific channel closures to gracefully shut down multi-stage asynchronous processing flows.

#13 about 5 min

Implementing robust concurrent services for encapsulated state management

Maintaining private business logic and synchronous access using structured backend routines and context handling.

#14 about 4 min

Integrating the actor model to simplify complex service operations

Passing logic via action channels to streamline process interactions and reduce boilerplate synchronization code.

#15 about 2 min

Embracing abstract design principles for elastic software topologies

Adopting flexible application designs to elegantly manage scaling resources and dynamic concurrent workloads.

Matching moments

2:31 min

Introduction to Go concurrency and parallelism

Rick Rackow Rick Rackow · WWC Europe 2026

48 sec

Key takeaways on Go container performance optimization

Rick Rackow Rick Rackow · WWC Europe 2026

3:21 min

Introducing goroutines and the Go scheduler

Rick Rackow Rick Rackow · WWC Europe 2026

4:00 min

Sequential execution versus concurrent execution in Go

Rick Rackow Rick Rackow · WWC Europe 2026

4:24 min

Leveraging the Go programming language for scalable infrastructure

Natalie Pistunovich · LIVE

2:03 min

Building scalable applications with reactive programming

Josh Long · WWC 2022

Upcoming sessions on this topic

Open session

World Congress 2026 North America

Designing APIs That Survive AI Agents at Scale

Phani Pendurthi

Mastercard, Principal Software Engineer

Phani Pendurthi
Open session

World Congress 2026 North America

From Cloud Native to Multi-Cloud Native: Write Once, Deploy Anywhere

Sandeep Pal

Principal Member of Technical Staff at Salesforce

Sandeep Pal
Open session

World Congress 2026 North America

Merging at Scale: From Broken Builds to Green Mainline

Preetam Dwivedi, Manjari Akella

Preetam Dwivedi
Manjari Akella
Open session

World Congress 2026 North America

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

Boring Failover: Predictable Region Recovery Across 5,000 Microservices

Sahil Sabharwal, Garvit Kataria

Sahil Sabharwal
Garvit Kataria
Open session

World Congress 2026 North America

Offloading IoT State: Solving the Memory Crisis on Legacy Hardware

Pravin Nagare

Senior Software Engineer, Roku

Pravin Nagare