CppCon 2016: Michael Caisse “Asynchronous IO with Boost.Asio"
Author: CppCon
6585 View
0m 0s Lenght
68 Rating
http://CppCon.org — Presentation Slides, PDFs, Source Code and other presenter materials are available at: https://github.com/cppcon/cppcon2016 — Reactive systems are found everywhere. The temptation to implement them with legions of waiting threads can be strong; however, the result is nearly always disappointing. The Boost.Asio library provides a framework to handle asynchronous resources with specific classes directed toward networking, serial port I/O, timers and more. In this session we will introduce Asio and some best practices while implementing a simple TCP client and server. Asio has been submitted to the C++ Standards Committee for inclusion and can be found in the Boost library collection or as a stand-alone version. Come and learn a better way to implement reactive systems with the Asynchronous I/O library. — Michael Caisse Ciere, Inc. Michael Caisse has been crafting code in C++ for 25-years. He is a regular speaker at various conferences and is passionate about teaching and training. Michael is the owner of Ciere Consulting which provides software consulting and contracting services, C++ training, and Project Recovery for failing multidisciplinary engineering projects. When he isn't fighting with compilers or robots, he enjoys fencing with a sabre. :: ciere.com — Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
Comments
-
Great lecture. I wish I watched it few years ago instead of going thru the docs.
-
Great talk as expected, but the lambda at 58:19 is by far the ugliest rendition of code I have seen in a long time.
-
I loved the talk. Especially the very nice and enlightning story.
That said, I find fairly confusing the way read/write operations are tasks that you enqueue and are each executed once, and lead to this weird "recursive enqueueing" pattern, that I personally find error prone, and quite unintuitive with added issues like lifetimes management problems.
Maybe I'm juste naive, but when I think of a server, I just want to have a callback when something have been read (and the server reads continuously without me doing anything about this), and have a write() operation, that may be asynchronous. -
This talk went off the rails when the code started filling the slides (started switching off). I think it would have been more effective to continue with diagram-centric content. The first part was good.
-
Best Cppcon 2016 talk. Useful stuff and tips. ASIO and coroutines, state machines and Spirit all deserve their own talk, maybe next year?