16 #ifndef BLOOMBERG_QUANTUM_ITHREAD_FUTURE_BASE_H 17 #define BLOOMBERG_QUANTUM_ITHREAD_FUTURE_BASE_H 22 #include <quantum/interface/quantum_icoro_sync.h> 34 using Ptr = std::shared_ptr<IThreadFutureBase>;
41 virtual bool valid()
const = 0;
45 virtual void wait()
const = 0;
51 virtual std::future_status
waitFor(std::chrono::milliseconds timeMs)
const = 0;
58 #endif //BLOOMBERG_QUANTUM_ITHREAD_FUTURE_BASE_H Definition: quantum_buffer_impl.h:22
virtual std::future_status waitFor(std::chrono::milliseconds timeMs) const =0
Waits for the future value up to a maximum 'timeMs' milliseconds.
virtual bool valid() const =0
Determines if this future still has a shared state with the promise object.
virtual ~IThreadFutureBase()=default
Virtual destructor.
virtual void wait() const =0
Waits for the future value.
Definition: quantum_ithread_future_base.h:32
std::shared_ptr< IThreadFutureBase > Ptr
Definition: quantum_ithread_future_base.h:34
IThreadFutureBase::Ptr IThreadFutureBasePtr
Definition: quantum_ithread_future_base.h:54