This is Unofficial EPICS BASE Doxygen Site
epics::pvData::Thread Class Reference

C++ wrapper for epicsThread from EPICS base. More...

#include "thread.h"

+ Inheritance diagram for epics::pvData::Thread:
+ Collaboration diagram for epics::pvData::Thread:

Classes

class  Config
 Create a new thread using the given. More...
 

Public Member Functions

 Thread (std::string name, ThreadPriority priority, Runnable *runnable, epicsThreadStackSizeClass stkcls=epicsThreadStackBig)
 

thread name.

Constructor

Parameters
runnablethis is a c function
stkclsstack size as specified by epicsThreadStackSizeClass
prioritypriority is one of:
static size_t num_instances
 
 Thread (Runnable &runnable, std::string name, unsigned int stksize, unsigned int priority=lowestPriority)
 
 Thread (Config &c)
 
 ~Thread ()
 

Detailed Description

C++ wrapper for epicsThread from EPICS base.

Definition at line 65 of file thread.h.

Constructor & Destructor Documentation

Thread::Thread ( std::string  name,
ThreadPriority  priority,
Runnable runnable,
epicsThreadStackSizeClass  stkcls = epicsThreadStackBig 
)

Constructor

Parameters
namethread name.
prioritypriority is one of:
runnablethis is a c function
stkclsstack size as specified by epicsThreadStackSizeClass

Definition at line 101 of file thread.cpp.

105  :epicsThread(*runnable,
106  name.c_str(),
107  epicsThreadGetStackSize(stkcls),
108  priority)
109 {
110  REFTRACE_INCREMENT(num_instances);
111  this->start();
112 }
static size_t num_instances
Definition: thread.h:192
LIBCOM_API unsigned int epicsStdCall epicsThreadGetStackSize(epicsThreadStackSizeClass size)
Definition: osdThread.c:466
Thread::Thread ( Runnable runnable,
std::string  name,
unsigned int  stksize,
unsigned int  priority = lowestPriority 
)

Definition at line 114 of file thread.cpp.

118  :epicsThread(runnable,
119  name.c_str(),
120  stksize,
121  priority)
122 {
123  REFTRACE_INCREMENT(num_instances);
124  this->start();
125 }
static size_t num_instances
Definition: thread.h:192
Thread::Thread ( Config c)

Definition at line 127 of file thread.cpp.

128  :epicsThread(c.x_getrunner(), c.p_strm.str().c_str(),
129  c.p_stack, c.p_prio)
130 {
131  REFTRACE_INCREMENT(num_instances);
132 #if __cplusplus>=201103L
133  p_owned = std::move(c.p_owned_runner);
134 #else
135  p_owned = c.p_owned_runner;
136 #endif
137  if(c.p_autostart)
138  this->start();
139 }
static size_t num_instances
Definition: thread.h:192
Thread::~Thread ( )

Destructor

Definition at line 141 of file thread.cpp.

142 {
143  this->exitWait();
144  REFTRACE_DECREMENT(num_instances);
145 }
static size_t num_instances
Definition: thread.h:192

Member Data Documentation

size_t Thread::num_instances
static

Definition at line 192 of file thread.h.


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