C/C++ API Reference
Loading...
Searching...
No Matches
pw::async2::BaseFutureList Class Reference

Overview

A list of FutureCores with common future-related operations. Future providers may use BaseFutureList or FutureList in place of a plain IntrusiveForwardList.

This class does not provide any locking. It is the responsibility of the user to ensure safety, typically by holding a lock in the containing provider.

Inheritance diagram for pw::async2::BaseFutureList:
pw::async2::CustomFutureList<&pw::async2::ValueFuture< T >::core_ > pw::async2::CustomFutureList< kGetFutureImpl, kGetFutureCore >

Public Member Functions

bool empty () const
 
void Push (FutureCore &future)
 
void PushRequireEmpty (FutureCore &future)
 
bool PushIfEmpty (FutureCore &future)
 
FutureCorePopIfAvailable ()
 
FutureCorePop ()
 
void ResolveOne ()
 
void ResolveOneIfAvailable ()
 
void ResolveAll ()
 Pops all futures and calls WakeAndMarkReady() on them.
 

Protected Member Functions

IntrusiveForwardList< FutureCore > & list ()
 

Member Function Documentation

◆ ResolveOne()

void pw::async2::BaseFutureList::ResolveOne ( )
inline

Pops the next future fromt the list and calls WakeAndMarkReady(). Crashes if there are no futures in the list.


The documentation for this class was generated from the following file: