SerialJobQueueRef Class Reference

#include <jobqueue.h>

Inheritance diagram for SerialJobQueueRef:

Detailed Description

Reference to a serial queue which guarantees serialized execution of the enqueued jobs. Serial execution does not guarantee the order of execution. The queue may reorder jobs if necessary.

Public Member Functions

 SerialJobQueueRef ()
 
SerialJobQueueRefoperator= (const JobQueueInterface::None &none)
 
SerialJobQueueRefoperator= (std::nullptr_t t)
 
Result< UIntInit (JOBQUEUETYPE type, Int threadCnt, JOBQUEUEMODE mode, const Char *name)=delete
 
- Public Member Functions inherited from JobQueueRef
 MAXON_DEFAULT_REFERENCE_CONSTRUCTORS (JobQueueRef, Reference)
 
MAXON_IMPLICIT JobQueueRef (const JobQueueInterface::Current &)
 
MAXON_IMPLICIT JobQueueRef (const JobQueueInterface::None &)
 
JobQueueRefoperator= (const JobQueueInterface::Current &)
 
JobQueueRefoperator= (const JobQueueInterface::None &)
 

Static Public Member Functions

static Result< SerialJobQueueRefCreate ()
 
static Result< SerialJobQueueRefCreate (JOBQUEUETYPE type, JOBQUEUEMODE mode=JOBQUEUEMODE::DEFAULT, const Char *name="Serial Job Queue", UInt *ownerId=nullptr)
 

Private Types

using Super = JobQueueRef
 

Member Typedef Documentation

◆ Super

using Super = JobQueueRef
private

Constructor & Destructor Documentation

◆ SerialJobQueueRef()

Member Function Documentation

◆ Create() [1/2]

static Result<SerialJobQueueRef> Create ( )
static

Creates and initializes a serial job queue.

Returns
OK on success.

◆ Create() [2/2]

static Result<SerialJobQueueRef> Create ( JOBQUEUETYPE  type,
JOBQUEUEMODE  mode = JOBQUEUEMODE::DEFAULT,
const Char name = "Serial Job Queue",
UInt ownerId = nullptr 
)
static

Creates and initializes a serial job queue.

Parameters
[in]typeQueue type, by default JOBQUEUETYPE::LOWPRIORITY.
[in]modeScheduling options for the queue, the default is JOBQUEUEMODE::DEFAULT.
[in]nameThe queue name, by default "Serial Job Queue".
[out]ownerIdOwner id of the queue (can be used for CancelAndWait).
Returns
OK on success.

◆ operator=() [1/2]

SerialJobQueueRef& operator= ( const JobQueueInterface::None &  none)

◆ operator=() [2/2]

SerialJobQueueRef& operator= ( std::nullptr_t  t)

◆ Init()

Result<UInt> Init ( JOBQUEUETYPE  type,
Int  threadCnt,
JOBQUEUEMODE  mode,
const Char name 
)
delete