Opened 11 years ago

Closed 10 years ago

#6269 closed Feature Requests (fixed)

c++11 compliance: thread move assignment should call terminate if joinable

Reported by: viboes Owned by: viboes
Milestone: Boost 1.50.0 Component: thread
Version: Boost 1.48.0 Severity: Problem
Keywords: Cc:

Description

In order to be standard compliant the thread move assignment should call terminate if joinable instead of detaching the thread.

"30.3.1.4 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."

This behavior is incompatible with the current version, so it shall be activated by a specific define, i.e., BOOST_THREAD_VERSION=2.

Change History (4)

comment:1 by viboes, 11 years ago

Summary: c++11 complicance: thread move assignment should call terminate if joinablec++11 compliance: thread move assignment should call terminate if joinable

comment:2 by viboes, 11 years ago

Owner: changed from Anthony Williams to viboes
Status: newassigned

comment:3 by viboes, 11 years ago

Milestone: To Be DeterminedBoost 1.50.0

See the patch in #6266.

Committed revision [77718].

comment:4 by viboes, 10 years ago

Resolution: fixed
Status: assignedclosed

Committed in release branch at [78543]

Note: See TracTickets for help on using tickets.