Boost C++ Libraries: Ticket #11716: ::then(f) should inherit the parent Executor https://svn.boost.org/trac10/ticket/11716 <p> In the ::then documentation we can read </p> <p> "When the scheduler or launch policy is not provided the continuation inherits the parent's launch policy or scheduler. " </p> <p> This has not been implemented and so the program terminates :( </p> <p> In order to implement it we need to type-erase the executor, so that we can use it to launch the continuation. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11716 Trac 1.4.3 viboes Sat, 10 Oct 2015 14:50:03 GMT owner, status changed https://svn.boost.org/trac10/ticket/11716#comment:1 https://svn.boost.org/trac10/ticket/11716#comment:1 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Anthony Williams</span> to <span class="trac-author">viboes</span> </li> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">assigned</span> </li> </ul> Ticket viboes Sun, 11 Oct 2015 18:14:50 GMT milestone changed https://svn.boost.org/trac10/ticket/11716#comment:2 https://svn.boost.org/trac10/ticket/11716#comment:2 <ul> <li><strong>milestone</strong> <span class="trac-field-old">To Be Determined</span> → <span class="trac-field-new">Boost 1.60.0</span> </li> </ul> <p> This commit contains a fix for this issue as well as the addition of the VERY-EXPERIMENTAL promise::set_executor and packaged_task::set_executor. These should be replaced by constructor. </p> <p> <a class="ext-link" href="https://github.com/boostorg/thread/commit/b8db8fef8b28414d16c66761badc1c6fcadfc38f"><span class="icon">​</span>https://github.com/boostorg/thread/commit/b8db8fef8b28414d16c66761badc1c6fcadfc38f</a> </p> Ticket viboes Sat, 17 Oct 2015 22:18:06 GMT <link>https://svn.boost.org/trac10/ticket/11716#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11716#comment:3</guid> <description> <p> After some more thoughts, I believe that then(cont) should result in the continuation been called on an unspecified thread of execution, as the Concurrency TS says. </p> <p> If the user wants to use the same executor it could do </p> <pre class="wiki">f.then(launch::executor, cont); </pre><p> or </p> <pre class="wiki">f.then(launch::inherit, cont); </pre><p> See <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/11736" title="#11736: Feature Requests: Allow to use launch::executor on future::then(launch::executor, cont) (closed: fixed)">#11736</a> and <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/11737" title="#11737: Feature Requests: Add a launch::inherit policy that can be used on ::then() to use the ... (closed: fixed)">#11737</a> </p> <p> </p> </description> <category>Ticket</category> </item> <item> <dc:creator>viboes</dc:creator> <pubDate>Wed, 21 Oct 2015 22:19:56 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/11716#comment:4 https://svn.boost.org/trac10/ticket/11716#comment:4 <ul> <li><strong>status</strong> <span class="trac-field-old">assigned</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> <a class="ext-link" href="https://github.com/boostorg/thread/commit/4321b59c1eedde71da58f592aa4c741a1feff046"><span class="icon">​</span>https://github.com/boostorg/thread/commit/4321b59c1eedde71da58f592aa4c741a1feff046</a> </p> Ticket