Boost logo

Boost :

Subject: Re: [boost] [thread] Interaction between interruption points and condition_variable
From: David Stone (david_at_[hidden])
Date: 2017-06-28 12:48:26


On Sat, Jun 24, 2017 at 2:01 PM, Rob Stewart <rstewart_at_[hidden]> wrote:

> That means cv.wait() is only an interruption point under certain
> circumstances.
>

cv.wait is already only an interruption point only if the predicate is
false to begin with. My preferred behavior would, in some ways, maintain
that relationship. If you make the predicate true and signal, then
interrupt, and the user has not yet begun to wait, they will encounter a
true predicate and never be interrupted. If they have begun to wait (under
the current behavior), it is undefined whether they will be interrupted.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk