30 Thread support library [thread]

30.6 Futures [futures]

30.6.9 Class template packaged_task [futures.task]

30.6.9.2 packaged_task globals [futures.task.nonmembers]

template <class R, class... ArgTypes> void swap(packaged_task<R(ArgTypes...)>& x, packaged_task<R(ArgTypes...)>& y) noexcept;

Effects: x.swap(y)

template <class R, class Alloc> struct uses_allocator<packaged_task<R>, Alloc> : true_type { };

Requires: Alloc shall be an Allocator ([allocator.requirements]).