Рет қаралды 7,861
cppcon.org/
---
C++ Coroutine Patterns and How to Use Them: Problems and Solutions Using Coroutines in a Modern Codebase - Francesco Zoffoli - CppCon 2023
github.com/CppCon/CppCon2023
In over 30 years of experience the C++ community have developed patterns that are effective in writing complex systems. The introduction of C++ 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 pitfalls that arise using C++ 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? Watch this exciting talk!
---
Francesco Zoffoli
Author of the book “C++ Fundamentals”, passionate about programming languages, maintainable software and distributed systems, he has been using C++ throughout his career and personal projects. Graduated in 2016 with a MSc in Computer Systems Engineering, he joined the industry working for Bloomberg LP.
Since 2020 he has been building software monitoring systems at Meta.
He enjoys using C++ to build maintainable systems that work at scale.
---
Videos Filmed & Edited by Bash Films: www.BashFilms.com
KZbin Channel Managed by Digital Medium Ltd: events.digital-medium.co.uk
---
Registration for CppCon: cppcon.org/registration/
#cppcon #cppprogramming #cpp