Goran Aranđelović — Brief introduction to senders and receivers (P2300) — 29.5.2024.

Описание к видео Goran Aranđelović — Brief introduction to senders and receivers (P2300) — 29.5.2024.

Asynchronous programming in C++ is not an easy task. There are various async models and corresponding libraries that facilitate these tasks, and it seems that it's becoming easier. With C++20 coroutines, we got new possibilities, but standard library support for coroutines is virtually nonexistent. Also, having only C++ coroutines in a toolbox is like having only raw pointers or std::thread, i.e., low-level primitives, which cannot be enough for highly composable and scalable APIs. There are a lot of libraries for async tasks implemented on top of coroutines, but there's still an open question - which one to use?

Aside from coroutines, Senders/Receivers emerged as a quite promising model for async computations and hopefully, we'll get std::execution (P2300) in C++26.

In this talk, I'll present Sender/Receiver concepts, various examples from stdexec, NVIDIA's implementation of std::execution proposal and I'll shed some light on how Sender/Receiver model interacts with C++ coroutines.

Speaker: Goran Aranđelović

Комментарии

Информация по комментариям в разработке