User Tools

Site Tools


2015:asynchronous_operations

Back to 2015-proposals

Title: Asynchronous Operations
Proposer: Dietmar Kuhl
Type: Tutorial
Duration: 90 mins
Description:
Doing many things concurrently is often necessary when dealing with high throughput systems. Using one thread fear each work item generally doesn't work too well as threads require substantial resources. On systems where work items frequently need to wait for completion of other operations, e.g., for input to bcome available scheduling operations asynchronously provides a scalable approach. This presentation demonstrates uses of components proposed to be included into C++ standard (ASIO, corroutines) to provide concurrent processing without [much] use of threads. Although some programming approaches need to be adjusted when using an asynchronous formulation the code can stay reasonably simple to follow.

For a future version of C++ different approaches to deal with concurrency are discussed. This presentation shows the different approaches under discussion which are useful for asynchronous processing, primarily implementations of coroutines and executors. The presentation shows how these facilities can be used in the context of the ASIO implementation for addressing networking. The different approaches are not, yet, part of the C++ standard but whatever concrete approaches will be used they are bound to be fairly similar to those under currently under discussion.



2015/asynchronous_operations.txt · Last modified: 2016/06/11 14:05 by 127.0.0.1