41 #ifndef Core_Thread_Parallel3_h
42 #define Core_Thread_Parallel3_h
68 Parallel3(T* obj,
void (T::*pmf)(
int, Arg1, Arg2, Arg3), Arg1
a1, Arg2
a2, Arg3
a3);
74 void (T::*
pmf_)(int, Arg1, Arg2, Arg3);
79 virtual void run(
int proc);
86 template<
class T,
class Arg1,
class Arg2,
class Arg3>
92 void (T::*pmf)(int, Arg1, Arg2, Arg3) = pmf_;
95 (obj->*pmf)(proc, a1, a2, a3);
100 template<
class T,
class Arg1,
class Arg2,
class Arg3>
102 void (T::*pmf)(
int, Arg1, Arg2, Arg3),
103 Arg1 a1, Arg2 a2, Arg3 a3) :
113 template<
class T,
class Arg1,
class Arg2,
class Arg3>
Arg2 a2
Definition: Parallel3.h:76
Arg1 a1
Definition: Parallel3.h:75
Definition: ParallelBase.h:62
Helper class to instantiate several threads.
Definition: Parallel3.h:61
virtual ~Parallel3()
Destroy the Parallel3 object - the threads will remain alive.
Definition: Parallel3.h:114
void(T::* pmf_)(int, Arg1, Arg2, Arg3)
Definition: Parallel3.h:74
virtual void run(int proc)
The thread body
Definition: Parallel3.h:88
T * obj_
Definition: Parallel3.h:73
Arg3 a3
Definition: Parallel3.h:77
Semaphore * wait_
Definition: ParallelBase.h:71
Parallel3(T *obj, void(T::*pmf)(int, Arg1, Arg2, Arg3), Arg1 a1, Arg2 a2, Arg3 a3)
Definition: Parallel3.h:101