• Lee Howes's avatar
    Adding DeferredExecutor to support deferred execution of tasks on a future... · 6e7e5a64
    Lee Howes authored
    Adding DeferredExecutor to support deferred execution of tasks on a future returned from an interface.
    
    Summary: This adds a DeferredExecutor type that is boostable, which means that it follows the expectation we expect for C++20 that .then and get will trigger boost-blocking behaviour and ensure work makes progress. Unlike discussions for C++ this adds boost blocking to folly only in the specific case of deferring work to run on the caller's executor, to avoid the necessity to pass an executor into a library purely to ensure that finalisation work and future completion occor on a well-defined exewcutor.
    
    Reviewed By: yfeldblum
    
    Differential Revision: D5828743
    
    fbshipit-source-id: 9a4b69d7deaa33c3cecd6546651b99cc99f0c286
    6e7e5a64
Future.h 25.1 KB