Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome, Safari or Firefox browser.

Going Async in Go

Johannes Pelto-Piri & Oskar Wickström

What is Go?

Go is an open source programming environment that makes it easy to build simple, reliable, and efficient software.

Overview

So what does it look like?

Hello World in Go

Packages

Variables

References and Values

Slices

Slices and Slicing

Maps

Working with Maps

Multiple Return Values

Defer

Closing a file with defer

Interfaces

Interfaces Example

Concurrency in Go

Ping Pong

Goroutines are Cheap

Non-blocking IO in Goroutines

What about something more advanced?

Lots of routines and channels

Buffered Channels

Select over Channels

Timing Out

Channel Directions

Closing Channels

Iterating Channel Messages

Timers & Tickers using Channels

Other Channel Operations

GOMAXPROCS

Demo

Questions?

Use a spacebar or arrow keys to navigate