Free Electron
Public Member Functions | Private Member Functions | Private Attributes | List of all members
fe::ext::Gang< WORKER, T > Class Template Reference

Group of Worker threads. More...

#include <Gang.h>

Inheritance diagram for fe::ext::Gang< WORKER, T >:
Inheritance graph
[legend]

Public Member Functions

BWORD start (sp< Counted > a_spObject=sp< Counted >(NULL), U32 a_threads=0, String a_stage="")
 
void finish (void)
 
- Public Member Functions inherited from fe::ext::JobQueue< T >
U32 workers (void) const
 
void post (T job)
 
void post (T first_job, T last_job)
 
BWORD take (T &job)
 
void waitForJob (T &job)
 
void deliver (T job)
 
BWORD acceptDelivery (T &job)
 
void waitForDelivery (T &job)
 
BWORD synchronize (BWORD a_supervised=FALSE)
 waits until all threads call sync More...
 
void relayException (const Exception &a_rException)
 
void resolveException (void)
 
- Public Member Functions inherited from fe::Handled< JobQueue< T > >
const hp< JobQueue< T > > & getHandle (void) const
 Get a safe handle to this object. More...
 
- Public Member Functions inherited from fe::Protectable
virtual I32 protection (void) const
 
virtual void protect (void)
 
virtual void unprotect (void)
 
virtual Protectableclone (Protectable *pInstance=NULL)
 
- Public Member Functions inherited from fe::Counted
virtual void acquire (void)
 Increment the reference count. More...
 
virtual void acquire (int &rCount)
 Increment the reference count (and get the count) More...
 
virtual void release (void)
 Decrement the reference count. More...
 
virtual void abandon (void)
 Decrement the reference count. More...
 
int count (void) const
 Return the count of references. More...
 
void setName (const String &)
 
void trackReference (void *pReference, String what)
 
void untrackReference (void *pReference)
 
void registerRegion (void *pT, U32 bytes)
 

Private Member Functions

void discardWorkers (void)
 

Private Attributes

Thread::Group * m_pGroup
 
Thread ** m_ppThread
 
WORKER ** m_ppWorker
 

Additional Inherited Members

- Static Public Member Functions inherited from fe::Counted
static String reportTracker (void)
 
static U32 trackerCount (void)
 
- Protected Member Functions inherited from fe::Handled< JobQueue< T > >
void abandonHandle (void)
 
- Protected Member Functions inherited from fe::Counted
int releaseInternal (void)
 Decrement the reference count. More...
 
void suppressReport (void)
 
- Protected Attributes inherited from fe::ext::JobQueue< T >
U32 m_workers
 

Detailed Description

template<typename WORKER, typename T>
class fe::ext::Gang< WORKER, T >

Group of Worker threads.


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