QuantumLibrary
Bloomberg::quantum::IThreadFutureBase Struct Referenceabstract

#include <quantum_ithread_future_base.h>

Inheritance diagram for Bloomberg::quantum::IThreadFutureBase:
Bloomberg::quantum::IThreadFuture< T > Bloomberg::quantum::Future< T >

Public Types

using Ptr = std::shared_ptr< IThreadFutureBase >
 

Public Member Functions

virtual ~IThreadFutureBase ()=default
 Virtual destructor. More...
 
virtual bool valid () const =0
 Determines if this future still has a shared state with the promise object. More...
 
virtual void wait () const =0
 Waits for the future value. More...
 
virtual std::future_status waitFor (std::chrono::milliseconds timeMs) const =0
 Waits for the future value up to a maximum 'timeMs' milliseconds. More...
 

Member Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ ~IThreadFutureBase()

virtual Bloomberg::quantum::IThreadFutureBase::~IThreadFutureBase ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ valid()

virtual bool Bloomberg::quantum::IThreadFutureBase::valid ( ) const
pure virtual

Determines if this future still has a shared state with the promise object.

Returns
True if valid, false otherwise.

Implemented in Bloomberg::quantum::Future< T >.

◆ wait()

virtual void Bloomberg::quantum::IThreadFutureBase::wait ( ) const
pure virtual

Waits for the future value.

Note
This method blocks until the future is ready or until an exception is thrown.

Implemented in Bloomberg::quantum::Future< T >.

◆ waitFor()

virtual std::future_status Bloomberg::quantum::IThreadFutureBase::waitFor ( std::chrono::milliseconds  timeMs) const
pure virtual

Waits for the future value up to a maximum 'timeMs' milliseconds.

Parameters
[in]timeMsThe maximum amount of milliseconds to wait until the future value becomes ready.
Returns
'ready' if value was posted before duration expired or 'timeout' otherwise.
Note
Blocks until the value is ready, until 'timeMs' duration expires or until an exception is thrown.

Implemented in Bloomberg::quantum::Future< T >.