cpp/experimental/lib extensions/packaged task/packaged task

Constructs a new object.

@1@ Constructs a object with no task and no shared state. @2@ Constructs a object with a shared state and a copy of the task, initialized with. This constructor does not participate in overload resolution if is the same type as. @3@ Constructs a object with a shared state and a copy of the task, initialized with. Uses the provided allocator to allocate memory necessary to store the task, which is treated as a type-erased allocator (see below). This constructor does not participate in overload resolution if is the same type as. @4@ The copy constructor is deleted, is move-only. @5@ Constructs a with the shared state and task formerly owned by, leaving  with no shared state and a moved-from task.

Exceptions
@2-3@ Any exceptions thrown by copy/move constructor of and possiblly std if the allocation fails.

@4@ (none)