Symbian platform (C++)
SDK native APIs, runtime and tooling
Loading...
Searching...
No Matches
symbian::concurrency Namespace Reference

Namespaces

namespace  internal
 

Classes

class  BoundedChannel
 
class  BoundedReader
 
class  BoundedWriter
 
class  EventExecutor
 
class  EventMailbox
 
class  Future
 
struct  InlinePumpState
 
class  NativeTaskOwner
 
class  NativeTimer
 
class  Promise
 
class  PropertyWatch
 
class  TaskGroup
 
class  TimerPump
 
struct  Unit
 
class  WorkerExecutor
 Bounded work destination on one guest OS thread. More...
 

Typedefs

using Task = Future< Unit >
 

Functions

template<typename T >
Future< T > ReadyFuture (T value)
 
template<typename T >
Future< T > FailedFuture (absl::Status error)
 
Task ReadyTask ()
 
Task FailedTask (absl::Status error)
 
template<typename T , typename Fn >
auto Then (const Future< T > &future, Fn transform) -> Future< typename std::invoke_result_t< Fn, const absl::StatusOr< T > & >::value_type >
 
template<typename Once >
void DriveInline (thread::Mutex *mu, InlinePumpState *state, std::string_view name, Once &&once, size_t max_depth=4)
 
bool PumpIsDriving (const InlinePumpState &state)
 
template<typename T >
Future< std::vector< absl::StatusOr< T > > > JoinAll (std::vector< Future< T > > inputs)
 
template<typename T , typename Fn >
auto ThenOn (const Future< T > &future, WorkerExecutor &worker, Fn transform) -> Future< typename std::invoke_result_t< Fn, const absl::StatusOr< T > & >::value_type >
 

Typedef Documentation

◆ Task

Function Documentation

◆ DriveInline()

template<typename Once >
void symbian::concurrency::DriveInline ( thread::Mutex *  mu,
InlinePumpState *  state,
std::string_view  name,
Once &&  once,
size_t  max_depth = 4 
)

◆ FailedFuture()

template<typename T >
Future< T > symbian::concurrency::FailedFuture ( absl::Status  error)

◆ FailedTask()

Task symbian::concurrency::FailedTask ( absl::Status  error)
inline

◆ JoinAll()

template<typename T >
Future< std::vector< absl::StatusOr< T > > > symbian::concurrency::JoinAll ( std::vector< Future< T > >  inputs)

◆ PumpIsDriving()

bool symbian::concurrency::PumpIsDriving ( const InlinePumpState &  state)
inline

◆ ReadyFuture()

template<typename T >
Future< T > symbian::concurrency::ReadyFuture ( T  value)

◆ ReadyTask()

Task symbian::concurrency::ReadyTask ( )
inline

◆ Then()

template<typename T , typename Fn >
auto symbian::concurrency::Then ( const Future< T > &  future,
Fn  transform 
) -> Future< typename std::invoke_result_t<Fn, const absl::StatusOr<T>&>::value_type>

◆ ThenOn()

template<typename T , typename Fn >
auto symbian::concurrency::ThenOn ( const Future< T > &  future,
WorkerExecutor &  worker,
Fn  transform 
) -> Future<typename std::invoke_result_t< Fn, const absl::StatusOr<T>&>::value_type>