Async / Await

Swift 5.5 comes with an incredible new feature for making safe, asynchronous, concurrent code with async/await and Structured Concurrency. In this series we will cover each of these topics in depth, starting from the basics and moving on to more complex concurrency topics using actors.

Length: 43 minutes

Installments

1. Async / Await Basics

Subscribers only

In this episode we will show how the async await keyword can simplify asynchronous code, reading top-down as if it were synchronous, but without blocking any threads. We'll also see how async let can allow you to process multiple values concurrently.

2. Concurrent For Loops with Task Groups

Subscribers only

In this episode we will see how we can run tasks concurrently with concurrent for loops, which is useful when the number of items you want to process is dynamic. With Task Groups you can process results asynchronously and assemble the results in a safe way.

3. Async Networking

Subscribers only

In this episode we will see how URLSession can be used with async await. With this new API you can easily send network request and await a tuple of both the data and the response object.

4. Adapting existing asynchronous APIs with Continuations

Subscribers only

With Continuations we can bridge the non-async world and make it async. Continuations allow us to take the result of a completion block and turn it into an async flow. In this episode we will see the difference between checked and unchecked continuations as well as their throwing variants.