The std::thread constructor creates (and then moves) an unnecessary temporary copy of each argument. Optimize it to only make the one copy that is required. PR libstdc++/69724 * include/std/thread (thread::_State_impl, thread::_S_make_state): Replace single _Callable parameter with variadic _Args pack, to forward them directly to the tuple of decayed copies. * testsuite/30_threads/thread/cons/69724.cc: New test. From-SVN: r271166
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
async | Loading commit data... | |
call_once | Loading commit data... | |
condition_variable | Loading commit data... | |
condition_variable_any | Loading commit data... | |
future | Loading commit data... | |
headers | Loading commit data... | |
lock | Loading commit data... | |
lock_guard | Loading commit data... | |
mutex | Loading commit data... | |
once_flag/cons | Loading commit data... | |
packaged_task | Loading commit data... | |
promise | Loading commit data... | |
recursive_mutex | Loading commit data... | |
recursive_timed_mutex | Loading commit data... | |
scoped_lock | Loading commit data... | |
shared_future | Loading commit data... | |
shared_lock | Loading commit data... | |
shared_mutex | Loading commit data... | |
shared_timed_mutex | Loading commit data... | |
this_thread | Loading commit data... | |
thread | Loading commit data... | |
timed_mutex | Loading commit data... | |
try_lock | Loading commit data... | |
unique_lock | Loading commit data... |