DUNE: Uniform Navigational Environment  2016.05.0
DUNE::Concurrency::Scheduler Class Reference

Detailed Description

Class to manage the default scheduling policy.

Public Types

enum  Policy { POLICY_FIFO, POLICY_RR, POLICY_OTHER }
 

Static Public Member Functions

static void set (Policy policy)
 
static Policy get (void)
 
static unsigned native (void)
 
static unsigned native (Policy policy)
 
static void yield (void)
 
static unsigned minimumPriority (void)
 
static unsigned maximumPriority (void)
 

Member Enumeration Documentation

Scheduling policies.

Enumerator
POLICY_FIFO 

First In-First Out scheduling policy.

POLICY_RR 

Round Robin scheduling policy.

POLICY_OTHER 

Platform specific scheduling policy.

Member Function Documentation

Scheduler::Policy DUNE::Concurrency::Scheduler::get ( void  )
static

Get default scheduling policy.

Returns
current scheduling policy.
unsigned DUNE::Concurrency::Scheduler::maximumPriority ( void  )
static

Get the maximum priority value for current default scheduling policy.

Returns
maximum priority value for current scheduling policy.

References native().

unsigned DUNE::Concurrency::Scheduler::minimumPriority ( void  )
static

Get the minimum priority value for current default scheduling policy.

Returns
minimum priority value for current scheduling policy.

References native().

unsigned DUNE::Concurrency::Scheduler::native ( void  )
static

Get the native scheduling policy identifier.

Returns
scheduling policy identifier.

Referenced by maximumPriority(), minimumPriority(), and DUNE::Concurrency::Thread::setPriorityImpl().

unsigned DUNE::Concurrency::Scheduler::native ( Scheduler::Policy  policy)
static

Translate a DUNE scheduling policy to a native scheduling policy identifier.

Parameters
policyscheduling policy.
Returns
native scheduling policy identifier.

References POLICY_FIFO, POLICY_OTHER, and POLICY_RR.

void DUNE::Concurrency::Scheduler::set ( Scheduler::Policy  policy)
static

Set default scheduling policy.

Parameters
policyscheduling policy.
void DUNE::Concurrency::Scheduler::yield ( void  )
static

Force the running thread to relinquish the processor until it becomes the head of its thread list.

Referenced by DUNE::Network::TCPSocket::writeFile().

Collaboration diagram for DUNE::Concurrency::Scheduler:
Collaboration graph