CppCon 2023 Problems and Solutions Using Coroutines In a Modern Codebase -- Francesco Zoffoli

Registration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting some upcoming talks that you will be able to attend this year. Here’s another CppCon future talk we hope you will enjoy – and register today for CppCon 2023!

Coroutine Patterns and How to Use Them: Problems and Solutions Using Coroutines In a Modern Codebase

Thursday, October 5 • 09:00 - 09:30

by Francesco Zoffoli

Summary of the talk:

In over 30 years of experience the C++ community have developed patterns that are effective in writing complex systems.  The introduction of coroutines introduced a brand new paradigm, but it changes many of the assumptions of the past. In this talk we'll see common patterns and pitfals that arise using coroutines, and what solutions are needed to address them.

Based on the experience working with a heavily coroutinized codebase, this talk will show a collection of common patterns that arise using coroutines. The patterns will cover from code that the compilers today block, to effectively managing resources with RAII, to the need and risks of synchronization. It will present ways to make the code correct, workarounds to obtain the same outcome, or will warn about potential issues that can arise from such patterns.

The code shown is going to be based on Facebook's Folly implementation of coroutines, but the concepts presented are common across other implementations as well (no previous knowledge of Folly is required).

This talk is perfect for practitioners that already are trying coroutines in their codebase and want to ensure the code they're writing doesn't contain hidden bugs, but also for people that haven't used coroutines yet and they are evaluating introducing them in their codebase.

Do you want to discover the new patterns to write correct code with coroutines? Join us for this exciting talk!

Add a Comment

Comments are closed.

Comments (0)

There are currently no comments on this entry.