Partager via


thread::thread Constructor

Constructs a thread object.

thread() _NOEXCEPT;
template<class Fn, class... Args>
   explicit thread(Fn&& F, Args&&... A);
thread(thread&& Other) _NOEXCEPT;

Parameters

  • F
    An application-defined function to be executed by the thread.

  • A
    A list of arguments to be passed to F.

  • Other
    An existing thread object.

Remarks

The first constructor constructs an object that's not associated with a thread of execution. The value that's returned by a call to get_id for the constructed object is thread::id().

The second constructor constructs an object that's associated with a new thread of execution and executes the pseudo-function INVOKE that's defined in <functional>. If not enough resources are available to start a new thread, the function throws a system_error object that has an error code of resource_unavailable_try_again. If the call to F terminates with an uncaught exception, terminate is called.

The third constructor constructs an object that's associated with the thread that's associated with Other. Other is then set to a default-constructed state.

Requirements

Header: thread

Namespace: std

See Also

Reference

thread Class

<thread>

thread::id Class