Back to [[conference:committee:proposals-2013]]\\ \\ **Title**: fork() -- exploring a separate-process async()\\ **Proposer**: [[2013:detlef_vollmann]]\\ **Type**: Tutorial\\ **Duration**: 90 minutes\\ **Description**: Parallelism on a multi-core system is efficient only if as few data as possible is shared. The POSIX fork() interface provides a very interesting way to achieve non-shared data.\\ \\ C++11 introduced async() to launch a function asynchronously (and get a future to wait eventually for the result). C++11 only specifies two ways of executing the function: either deferred in the same thread or "as if in a new thread". But the standards committee specifically left other options for implementers to provide.\\ \\ This talk will look at an implementation using the fork(). fork() starts a new process as an exact (copy on write) clone of the existing process. The talk will present the benefits and drawbacks of such an implemenation.\\ \\ Though this presentation will use a Posix interface that's not directly available in Windows, it's still interesting to non-Posix programmers as it looks generally at the differences between multi-threading vs. multi-processing.\\ \\ Intended audience:\\ This talk is for programmers and designers who are interested in a non-multithreading view on concurrency. No knowledge of Posix or C++ is required.\\ \\ Roger: interesting, but didn't he do as similar talk a year or two back? \\ Asti - I'm ambivalent \\