30 Thread support library [thread]

30.3 Threads [thread.threads]

30.3.2 Class thread [thread.thread.class] thread assignment [thread.thread.assign]

thread& operator=(thread&& x) noexcept;
Effects: If joinable(), calls terminate().
Otherwise, assigns the state of x to *this and sets x to a default constructed state.
Ensures: x.get_­id() == id() and get_­id() returns the value of x.get_­id() prior to the assignment.
Returns: *this.