fw4spl
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
fwThread Namespace Reference

This namespace fwThread provides few tools to execute asynchronous tasks on different threads. More...

Classes

class  Pool
 This class creates and manages a pool of threads which process tasks. More...
 
struct  TaskHandler
 This class encapsulates packaged task and provides a copy constructor. More...
 
class  Timer
 The Timer class provides single-shot or repetitive timers. A Timer triggers a function once after a delay, or periodically, inside the worker loop. The delay or the period is defined by the duration attribute. More...
 
class  TimerAsio
 Private Timer implementation using boost::asio. More...
 
class  Worker
 This class creates and manages a task loop. The default implementation create a loop in a new thread. More...
 
class  WorkerAsio
 Private implementation of fwThread::Worker using boost::asio. More...
 

Typedefs

typedef std::thread::id ThreadIdType
 

Functions

FWTHREAD_API PoolgetDefaultPool ()
 Get the default pool.
 
template<typename R >
std::function< void() > moveTaskIntoFunction (std::packaged_task< R > &task)
 Encapsulate a packaged_task into a boost function to be easily posted on a worker.
 
FWTHREAD_API ThreadIdType getCurrentThreadId ()
 Returns the current thread id.
 
std::size_t WorkerThread (::boost::asio::io_service &io_service)
 

Detailed Description

This namespace fwThread provides few tools to execute asynchronous tasks on different threads.

Date
2012