Last Updated: June 6, 2026
Given a piece of work, what are the concrete ways to hand it to a new thread, and which form fits which situation? This chapter covers function pointers, lambdas, member functions, functors, std::bind, move-only callables, the cost of spawning a thread, and how hardware_concurrency() informs how many to start.