Re: [Boost-bugs] [Boost C++ Libraries] #12293: boost::future::then lambda called before future is ready.

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #12293: boost::future::then lambda called before future is ready.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2016-08-15 18:00:28


#12293: boost::future::then lambda called before future is ready.
----------------------------------+-------------------------
  Reporter: Jeffrey.Gramowski@… | Owner: viboes
      Type: Bugs | Status: assigned
 Milestone: To Be Determined | Component: thread
   Version: Boost 1.60.0 | Severity: Problem
Resolution: | Keywords: future then
----------------------------------+-------------------------

Comment (by Jeffrey.Gramowski@…):

 Replying to [comment:9 viboes]:
> Have you seen my comment 7?

 I tried the unwrap function and it works. But I still think that there is
 a problem. So either my code shouldn't compile and force the developer to
 use the unwrap function. Or if boost is going to do the "auto" unwrap
 functionality than it needs to do it in a way so that it is equivalent to
 calling the unwrap function.

 For now I guess I will call the unwrap function but I still think that
 something needs to be done here. The current implementation can introduce
 very hard to find bugs in a system dealing with threads. This is how I
 ran into this problem. I was trying to track down a deadlock in some
 multi-threaded code which wasn't suppose to block and I tracked it down to
 this condition. Note I am also using the executor functionality so that I
 can control the threads and our threads are not allowed to block.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/12293#comment:10>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:20 UTC