JobResultInterface< RESULTVALUETYPE > Class Template Reference 线程

#include <job.h>

Inheritance diagram for JobResultInterface< RESULTVALUETYPE >:

详细描述

template<typename RESULTVALUETYPE>
class maxon::JobResultInterface< RESULTVALUETYPE >

Template for jobs which return more than just a void result.

公共成员函数

Result < RESULTVALUETYPE >  GetResult ( TimeValue timeout= TIMEVALUE_INFINITE , WAITMODE mode= WAITMODE::DEFAULT ) const
Result < RESULTVALUETYPE >  MoveResult ( TimeValue timeout= TIMEVALUE_INFINITE , WAITMODE mode= WAITMODE::DEFAULT )
-  Public Member Functions inherited from JobInterface
JOBOPTIONFLAGS  GetJobOptions () const
const Char GetName () const
  JobInterface (const JobInterfaceJumpTablePOD &jmpTable)
  ~JobInterface ()
  JobInterface ( JobInterface && src )
JobInterface operator= ( JobInterface && src )
Bool   Wait ( TimeValue timeout= TIMEVALUE_INFINITE , WAITMODE mode= WAITMODE::DEFAULT ) const
Result < void >  GetResult ( TimeValue timeout= TIMEVALUE_INFINITE , WAITMODE mode= WAITMODE::DEFAULT ) const
Result < void >  MoveResult ( TimeValue timeout= TIMEVALUE_INFINITE , WAITMODE mode= WAITMODE::DEFAULT )
void  取消 ()
Bool   IsCancelled () const
void  CancelAndWait ( WAITMODE mode= WAITMODE::DEFAULT )
JobInterface Enqueue ( JobQueueInterface *queue= JOBQUEUE_CURRENT )
Result < void >  AddSubJob ( JobInterface *subJob)
template<typename JOB >
Result < void >  AddSubJob ( ResultMemT < JOB * > subJob)
template<typename JOBREF >
Result < void >  AddSubJob ( ResultMemT < JOBREF > &&subJob)
template<typename GROUP >
Result < void >  AddSubGroup (GROUP *subGroup)
template<typename GROUP >
Result < void >  AddSubGroup ( ResultMemT < GROUP * > subGroup)
template<typename GROUP >
Result < void >  AddSubGroup ( ResultMemT < GROUP > subGroup)
JobGroupInterface GetJobGroup () const
ObservableFinishedBase < JobInterface ObservableFinished ()
ObservableCancelledBase < JobInterface ObservableCancelled ()
String   ToString (const FormatStatement *formatStatement=nullptr) const

Protected Member Functions

ResultOk < void >  SetResult (RESULTVALUETYPE &&value)
template<typename FN , typename... ARGS>
Result < void >  Invoke (FN &&obj, ARGS &&... args)

Private Attributes

RESULTVALUETYPE  _result

Additional Inherited Members

-  Static Public Member Functions inherited from JobInterface
static Int   GetCurrentWorkerThreadIndex ()
static Int   GetCurrentThreadCount ()
static Bool   IsCurrentJobCancelled (const JobInterface *optionalJob=nullptr)
static JobStatusInterface GetCurrentJob ()