Asynchronous I/O and Coroutines for Smooth Data Streaming - Björn Fahller - ACCU 2022
Join The ACCU Membership For Exclusive Benefits, Discounts & Reduced Conference Ticket Pricing:
https://accu.org/menu-overviews/membership/
---
Asynchronous I/O and Coroutines for Smooth Data Streaming - Björn Fahller - ACCU 2022
Slides & Materials: https://speakerdeck.com/rollbear/o-and-coroutines-for-smooth-data-streaming-2067ad42-9d0b-40ee-964e-bcca3f9e1e04
Linux kernel 5.1 introduced io_uring, which is a mechanism to do asynchronous I/O, primarily for network and disk operations. With asynchronous I/O, the responsiveness of your program is enhanced, but it can easily lead to "callback hell", where you register callbacks that processes arrived data, which feeds information to other callbacks, and so on. C++20 brings us language level coroutines. Coroutines are a generalization of functions, that can be suspended in the middle to allow other computations, and then resumed again, all in the same thread. One such suspension point can be to wait for the arrival of data. In this presentation I will bring a brief introduction to both topics, and then show how to use io_uring and coroutines to write code that reads asynchronous data in several short loops, seemingly running in parallel, without having to worry about threading issues.
---
Björn Fahller
Björn wrote his first program in 1980. After completing his MSc in CS and Engineering in 1994, programming has been the primary source of income, mostly from writing embedded software for communications systems. He has been working for a while at Net Insight, where he wears many hats, including mentor, trouble shooter, network communications expert, software architect and programmer; the latter in increasingly modern C++.
Occasionally Björn has been seen tinkering with unorthodox software constructs, pondering "what can be done with this?" He lives in Stockholm.
---
Videos Filmed & Edited by Digital Medium: https://events.digital-medium.co.uk
#accuconf #programming #coroutines
Видео Asynchronous I/O and Coroutines for Smooth Data Streaming - Björn Fahller - ACCU 2022 канала ACCU Conference
https://accu.org/menu-overviews/membership/
---
Asynchronous I/O and Coroutines for Smooth Data Streaming - Björn Fahller - ACCU 2022
Slides & Materials: https://speakerdeck.com/rollbear/o-and-coroutines-for-smooth-data-streaming-2067ad42-9d0b-40ee-964e-bcca3f9e1e04
Linux kernel 5.1 introduced io_uring, which is a mechanism to do asynchronous I/O, primarily for network and disk operations. With asynchronous I/O, the responsiveness of your program is enhanced, but it can easily lead to "callback hell", where you register callbacks that processes arrived data, which feeds information to other callbacks, and so on. C++20 brings us language level coroutines. Coroutines are a generalization of functions, that can be suspended in the middle to allow other computations, and then resumed again, all in the same thread. One such suspension point can be to wait for the arrival of data. In this presentation I will bring a brief introduction to both topics, and then show how to use io_uring and coroutines to write code that reads asynchronous data in several short loops, seemingly running in parallel, without having to worry about threading issues.
---
Björn Fahller
Björn wrote his first program in 1980. After completing his MSc in CS and Engineering in 1994, programming has been the primary source of income, mostly from writing embedded software for communications systems. He has been working for a while at Net Insight, where he wears many hats, including mentor, trouble shooter, network communications expert, software architect and programmer; the latter in increasingly modern C++.
Occasionally Björn has been seen tinkering with unorthodox software constructs, pondering "what can be done with this?" He lives in Stockholm.
---
Videos Filmed & Edited by Digital Medium: https://events.digital-medium.co.uk
#accuconf #programming #coroutines
Видео Asynchronous I/O and Coroutines for Smooth Data Streaming - Björn Fahller - ACCU 2022 канала ACCU Conference
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
![Secure by Design - Security Principles for the Working Architect - Eoin Woods [ACCU 2019]](https://i.ytimg.com/vi/YbjoaMN67Hw/default.jpg)
![Lightning Talk: A Story of Failure During The Pandemic - Felix Petriconi [ ACCU 2021 ]](https://i.ytimg.com/vi/SzZR_jW_7BQ/default.jpg)
![An Adventure in Race Conditions - Felix Petriconi [ACCU 2019]](https://i.ytimg.com/vi/asgO4P2fhTw/default.jpg)
![Documentation in the Era of Concepts and Ranges - Christopher Di Bella & Sy Brand - ACCU 2022](https://i.ytimg.com/vi/IRqOHsNEKNE/default.jpg)
![Time Travel Debugging - It’s Time to Debug Different - Undo Software [ ACCU 2021 ]](https://i.ytimg.com/vi/5GeO92F-wfY/default.jpg)
![ACCU Conference 2018 Highlights - Promotional Video - C++ and Coding Conference](https://i.ytimg.com/vi/FMYazsVW1KA/default.jpg)
![Deliberate Architecture - Robert Smallshire - ACCU 2022](https://i.ytimg.com/vi/z1BldKZaonM/default.jpg)
![Alchemical Code Rejuvenation - Uberto Barbini [ACCU 2018]](https://i.ytimg.com/vi/koGpF1solzM/default.jpg)
![Requirement: Creativity - Dirk Haun [ACCU 2017]](https://i.ytimg.com/vi/zYEQEtdkf6M/default.jpg)
![A Tour of C++ Recognised User Type Categories - Nina Ranns - ACCU 2023](https://i.ytimg.com/vi/5LgatImW-js/default.jpg)
![Design and Evolution of cyber-dojo - Jon Jagger [ACCU 2017]](https://i.ytimg.com/vi/eR_RENdIIzw/default.jpg)
![How to write a programming language - Andy Balaam [ACCU 2017]](https://i.ytimg.com/vi/82-XjMzKaC8/default.jpg)
![ACCU Lightning Talk - Straw Man - Seb Rose - ACCU 2022](https://i.ytimg.com/vi/dUCCarr78Vk/default.jpg)
!['Proper Inheritance' - John Lakos [ ACCU 2016 ]](https://i.ytimg.com/vi/w1yPw0Wd6jA/default.jpg)
![Embracing User-Defined Literals Safely - Pablo Halpern - ACCU 2022](https://i.ytimg.com/vi/_nW2iB6_BAU/default.jpg)
![Lightning Talk: Applied Tuples - Dietmar Kühl [ ACCU 2021 ]](https://i.ytimg.com/vi/UosYnvix1kA/default.jpg)
![Typical Type Typos - Amir Kirsh [ ACCU 2021 ]](https://i.ytimg.com/vi/fIKIOxh3Tds/default.jpg)
![C++ Insights: How stuff works, Lambdas and more! - Andreas Fertig [ACCU 2019]](https://i.ytimg.com/vi/G0Z8FUJ4RLc/default.jpg)
![ACCU 2021 Online Conference Preview - 10-13 March 2021](https://i.ytimg.com/vi/moasjRkZaWg/default.jpg)
![PowerShell for the Curious - Chris Oldwood - [ ACCU 2019 ]](https://i.ytimg.com/vi/CHJ51hnSUmM/default.jpg)