Course Description

Threading and Concurrency in Scala

This short course provides an introduction to writing multi-threaded and concurrent code in Scala.

Supported Distributions

The course can be run on Windows, Linux or OS X.



1 Day


Target Audience

Developers who already know some Scala, but who wish to see how Scala supports the writing of multi-threaded and concurrent code.


Course Prerequisites

Developers with some experience of programming in Scala, or who have attended the “Scala Programming” course.


Suggested Follow on Courses

Advanced Scala Programming – GTSC02


Course Content

Creating and Using Threads

  • Models of concurrent programming
  • Threads and processes
  • Creating and controlling threads
  • Synchronization primitives

Futures and Promises

  • Futures
  • Execution contexts
  • Callbacks
  • Composing futures
  • Handling errors
  • Functional programming with futures

Introduction to Actors and Akka

  • Actor systems and Akka
  • Messaging styles
  • Creating actors
  • Sending messages
  • Initialization
  • Configuring actors

Fault Tolerance

  • Actor systems
  • Supervision
  • Handling actor failure

Routing and Dispatching

  • Intro to routing and dispatching
  • Default routing
  • Built-in routers
  • Custom routers
  • Dispatchers
  • Customizing dispatching


See more Programming Languages courses