Grappa  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Grappa::Worker Class Reference

Worker/coroutine. More...

#include <Worker.hpp>

Inheritance diagram for Grappa::Worker:
Grappa::SuspendedDelegate

Public Member Functions

 Worker ()
 
intptr_t stack_remaining ()
 
void prefetch ()
 prefetch the Worker execution state More...
 

Public Attributes

void * stack
 
Workernext
 
union {
   struct {
      int   running: 1
 
      int   suspended: 1
 
      int   idle: 1
 
   } 
 
   int8_t   run_state_raw_
 
}; 
 
Schedulersched
 
bool done
 
void * base
 
size_t ssize
 
threadid_t id
 
Workertracking_prev
 
Workertracking_next
 

Detailed Description

Worker/coroutine.

Definition at line 61 of file Worker.hpp.

Constructor & Destructor Documentation

Grappa::Worker::Worker ( )
inline

Definition at line 66 of file Worker.hpp.

Member Function Documentation

void Grappa::Worker::prefetch ( )
inline

prefetch the Worker execution state

Definition at line 135 of file Worker.hpp.

intptr_t Grappa::Worker::stack_remaining ( )
inline

Definition at line 120 of file Worker.hpp.

Member Data Documentation

union { ... }
void* Grappa::Worker::base

Definition at line 95 of file Worker.hpp.

bool Grappa::Worker::done

Definition at line 91 of file Worker.hpp.

threadid_t Grappa::Worker::id

Definition at line 98 of file Worker.hpp.

int Grappa::Worker::idle

Definition at line 84 of file Worker.hpp.

Worker* Grappa::Worker::next

Definition at line 75 of file Worker.hpp.

int8_t Grappa::Worker::run_state_raw_

Definition at line 86 of file Worker.hpp.

int Grappa::Worker::running

Definition at line 82 of file Worker.hpp.

Scheduler* Grappa::Worker::sched

Definition at line 90 of file Worker.hpp.

size_t Grappa::Worker::ssize

Definition at line 97 of file Worker.hpp.

void* Grappa::Worker::stack

Definition at line 71 of file Worker.hpp.

int Grappa::Worker::suspended

Definition at line 83 of file Worker.hpp.

Worker* Grappa::Worker::tracking_next

Definition at line 112 of file Worker.hpp.

Worker* Grappa::Worker::tracking_prev

Definition at line 111 of file Worker.hpp.


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