Lockless Task Scheduler  v1.0a
A lockless task scheduler
Public Member Functions | Public Attributes | List of all members
task_scheduler::base_task< TMemInterface >::transient_container Struct Reference

Struct transient_container More...

#include <task.h>

Collaboration diagram for task_scheduler::base_task< TMemInterface >::transient_container:
Collaboration graph
[legend]

Public Member Functions

 transient_container ()
 Initializes a new instance of the base_task<TMemInterface>.transient_container struct. More...
 
 ~transient_container ()
 Finalizes an instance of the base_task<TMemInterface>.transient_container class. More...
 

Public Attributes

std::atomic_int64_t start_gate
 The start gate More...
 
work_queue_typework_queue
 The work queue More...
 
work_memory_allocator_type work_allocator
 The work allocator More...
 
std::atomic_int64_t num_working
 The number working More...
 
profile::time task_time
 Total time spent running all work functions in this task More...
 
std::atomic_int64_t num_runned
 Total number of times work function was called More...
 
uint32_t minimum_batch_size
 Calculated minimum batch size More...
 

Detailed Description

template<class TMemInterface>
struct task_scheduler::base_task< TMemInterface >::transient_container

Struct transient_container

Constructor & Destructor Documentation

◆ transient_container()

template<class TMemInterface >
task_scheduler::base_task< TMemInterface >::transient_container::transient_container ( )

Initializes a new instance of the base_task<TMemInterface>.transient_container struct.

◆ ~transient_container()

template<class TMemInterface >
task_scheduler::base_task< TMemInterface >::transient_container::~transient_container ( )

Finalizes an instance of the base_task<TMemInterface>.transient_container class.

Member Data Documentation

◆ minimum_batch_size

template<class TMemInterface >
uint32_t task_scheduler::base_task< TMemInterface >::transient_container::minimum_batch_size

Calculated minimum batch size

◆ num_runned

template<class TMemInterface >
std::atomic_int64_t task_scheduler::base_task< TMemInterface >::transient_container::num_runned

Total number of times work function was called

◆ num_working

template<class TMemInterface >
std::atomic_int64_t task_scheduler::base_task< TMemInterface >::transient_container::num_working

The number working

◆ start_gate

template<class TMemInterface >
std::atomic_int64_t task_scheduler::base_task< TMemInterface >::transient_container::start_gate

The start gate

◆ task_time

template<class TMemInterface >
profile::time task_scheduler::base_task< TMemInterface >::transient_container::task_time

Total time spent running all work functions in this task

◆ work_allocator

template<class TMemInterface >
work_memory_allocator_type task_scheduler::base_task< TMemInterface >::transient_container::work_allocator

The work allocator

◆ work_queue

template<class TMemInterface >
work_queue_type* task_scheduler::base_task< TMemInterface >::transient_container::work_queue

The work queue


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