Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2001-08-30 07:08:16

From: "William Kempf" <williamkempf_at_[hidden]>
> As of yesterday I checked in the proposed implementation, including the
> documentation. The documentation was also posted to this list a week or
> ago when this thread started. But to answer the questions, calls to a
> thread objects that are non-joinable (default constructed thread objects
> thread objects that have already been "joined") result in undefined
> behavior, and is a programmatic error.

Why the stricter requirement of undefined behavior for subsequent joins? Why
not simply 'no effect'?

Is boost::thread thread safe? IOW are calls to boost::thread::join

What happens when two threads simultaneously call x.join()?


case 1: access not serialized. Undefined behavior.
case 2: access serialized. Undefined behavior (second join.)
case 3: access serialized, subsequent joimns have no effect. Well defined
behavior. Both threads join x.]

Peter Dimov
Multi Media Ltd.

Boost list run by bdawes at, gregod at, cpdaniel at, john at