© Peter Van Weert and Marc Gregoire 2019
Peter Van Weert and Marc GregoireC++17 Standard Library Quick Referencehttps://doi.org/10.1007/978-1-4842-4923-9_7

7. Concurrency

Peter Van Weert1  and Marc Gregoire2
Kessel-Lo, Belgium
Meldert, Belgium

Threads <thread>

Launching a New Thread

To run any function pointer, functor, or lambda expression in a new thread of execution, pass it to the constructor of std::thread, along with any number of arguments. For example, these two lines are functionally equivalent:
std::thread worker1(my_callable, "arg", anotherArg);
std::thread worker2([=] { my_callable("arg", anotherArg); });

The given callable with its arguments is invoked in a newly launched thread of execution prior to returning from the thread’s constructor. ...

Get C++17 Standard Library Quick Reference: A Pocket Guide to Data Structures, Algorithms, and Functions now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.