NeoPZ
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
TPZTaskGroup Class Reference

#include <TPZTaskGroup.h>

Public Member Functions

 TPZTaskGroup ()
 
 TPZTaskGroup (const TPZTaskGroup &orig)
 
void Wait ()
 
long unsigned int Active ()
 
virtual ~TPZTaskGroup ()
 

Private Member Functions

void Notify (TPZTask *task)
 
void RegisterTask (TPZTask *task)
 

Private Attributes

std::mutex fMutex
 
std::condition_variable fObservers
 
std::set< TPZTask * > fPendingTasks
 

Friends

class TPZTask
 

Detailed Description

Definition at line 17 of file TPZTaskGroup.h.

Constructor & Destructor Documentation

◆ TPZTaskGroup() [1/2]

TPZTaskGroup::TPZTaskGroup ( )

Definition at line 12 of file TPZTaskGroup.cpp.

◆ TPZTaskGroup() [2/2]

TPZTaskGroup::TPZTaskGroup ( const TPZTaskGroup orig)

Definition at line 15 of file TPZTaskGroup.cpp.

◆ ~TPZTaskGroup()

TPZTaskGroup::~TPZTaskGroup ( )
virtual

Definition at line 18 of file TPZTaskGroup.cpp.

Member Function Documentation

◆ Active()

long unsigned int TPZTaskGroup::Active ( )

Definition at line 41 of file TPZTaskGroup.cpp.

References fPendingTasks.

◆ Notify()

void TPZTaskGroup::Notify ( TPZTask task)
private

Definition at line 21 of file TPZTaskGroup.cpp.

References fMutex, fObservers, and fPendingTasks.

Referenced by TPZTask::Cancel(), and TPZTask::start().

◆ RegisterTask()

void TPZTaskGroup::RegisterTask ( TPZTask task)
private

Definition at line 29 of file TPZTaskGroup.cpp.

References fMutex, and fPendingTasks.

Referenced by TPZTask::TPZTask().

◆ Wait()

void TPZTaskGroup::Wait ( )

Friends And Related Function Documentation

◆ TPZTask

friend class TPZTask
friend

Definition at line 25 of file TPZTaskGroup.h.

Member Data Documentation

◆ fMutex

std::mutex TPZTaskGroup::fMutex
private

Definition at line 29 of file TPZTaskGroup.h.

Referenced by Notify(), RegisterTask(), and Wait().

◆ fObservers

std::condition_variable TPZTaskGroup::fObservers
private

Definition at line 30 of file TPZTaskGroup.h.

Referenced by Notify(), and Wait().

◆ fPendingTasks

std::set<TPZTask*> TPZTaskGroup::fPendingTasks
private

Definition at line 31 of file TPZTaskGroup.h.

Referenced by Active(), Notify(), RegisterTask(), and Wait().


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