<div class="gmail_quote">2009/3/9 tom fogal <span dir="ltr">&lt;<a href="mailto:tfogal@alumni.unh.edu">tfogal@alumni.unh.edu</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

I haven&#39;t used boost&#39;s locking mechanisms yet, but POSIX condvars<br>
don&#39;t protect against spurious wakes.  Thus,<br>
<br>
[snip]<br>
<div class="im">&gt;   //wait for an answer..<br>
&gt;   bool ready = _cond.timed_wait(lock, xt, boost::lambda::var(_data_ready));<br>
<br>
</div>you probably want this in a loop,<br>
<br>
    while(!_data_ready) {<br>
        _cond.timed_wait(... _data_ready);<br>
    }<br>
</blockquote></div><br>timed_wait with predicate (that&#39;s what OP used) does exactly this, it waits on condvar until predicate is satisfied. So problem is in some other place.<br><br>Roman.<br>

