\hypertarget{class_s_c_i_run_1_1_thread_group}{\section{Thread\-Group Class Reference}
\label{class_s_c_i_run_1_1_thread_group}\index{Thread\-Group@{Thread\-Group}}
}


{\ttfamily \#include $<$Thread\-Group.\-h$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_s_c_i_run_1_1_thread_group_a0d362284bad604907ecca7b2d49e0359}{Thread\-Group} (const char $\ast$\hyperlink{_boost_graph_example_tests_8cc_a8ad72759d07f18eaf8f6690e5dfb747c}{name}, \hyperlink{class_s_c_i_run_1_1_thread_group}{Thread\-Group} $\ast$\hyperlink{class_s_c_i_run_1_1_thread_group_a27f4f9179c10401da437bf3bc7f30e69}{parent\-Group}=0)
\item 
\hyperlink{class_s_c_i_run_1_1_thread_group_ae2b80051564483856034447b06d9f6a0}{$\sim$\-Thread\-Group} ()
\item 
int \hyperlink{class_s_c_i_run_1_1_thread_group_a58bdd429bc5e3ea92297272e61b724e2}{num\-Active} (bool count\-Daemon)
\item 
void \hyperlink{class_s_c_i_run_1_1_thread_group_a8c528baf37154d347366083f0f816846}{stop} ()
\begin{DoxyCompactList}\small\item\em Stop all of the threads in this thread group. \end{DoxyCompactList}\item 
void \hyperlink{class_s_c_i_run_1_1_thread_group_a41de8150eff044a237990c271d57ea27}{resume} ()
\begin{DoxyCompactList}\small\item\em Resume all of the threads in this thread group. \end{DoxyCompactList}\item 
void \hyperlink{class_s_c_i_run_1_1_thread_group_a6c7abfff648dad193674fc432ad4840d}{join} ()
\begin{DoxyCompactList}\small\item\em Wait until all of the threads have completed. \end{DoxyCompactList}\item 
void \hyperlink{class_s_c_i_run_1_1_thread_group_ac295bade8aee589f6718dfa79edc2a34}{detach} ()
\begin{DoxyCompactList}\small\item\em Detach the thread, joins are no longer possible. \end{DoxyCompactList}\item 
\hyperlink{class_s_c_i_run_1_1_thread_group}{Thread\-Group} $\ast$ \hyperlink{class_s_c_i_run_1_1_thread_group_a27f4f9179c10401da437bf3bc7f30e69}{parent\-Group} ()
\item 
void \hyperlink{class_s_c_i_run_1_1_thread_group_aacb529a87120b99faf7c2c44fe662242}{gang\-Schedule} ()
\end{DoxyCompactItemize}
\subsection*{Static Protected Attributes}
\begin{DoxyCompactItemize}
\item 
static \hyperlink{class_s_c_i_run_1_1_thread_group}{Thread\-Group} $\ast$ \hyperlink{class_s_c_i_run_1_1_thread_group_a892206ba9f41a676afdfdccda75a48c7}{s\-\_\-default\-\_\-group}
\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{class_s_c_i_run_1_1_thread_group_adbc148eaddd341d7ae4d07c9e9e33bfd}{Thread}
\end{DoxyCompactItemize}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{class_s_c_i_run_1_1_thread_group_a0d362284bad604907ecca7b2d49e0359}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!Thread\-Group@{Thread\-Group}}
\index{Thread\-Group@{Thread\-Group}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{Thread\-Group}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Thread\-Group} (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{name, }
\item[{{\bf Thread\-Group} $\ast$}]{parent\-Group = {\ttfamily 0}}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_a0d362284bad604907ecca7b2d49e0359}
Create a thread group with the specified {\itshape name}. {\itshape parent\-Group} specifies the parent {\bfseries \hyperlink{class_s_c_i_run_1_1_thread_group}{Thread\-Group}} which defaults to the default top-\/level group. \hypertarget{class_s_c_i_run_1_1_thread_group_ae2b80051564483856034447b06d9f6a0}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!$\sim$\-Thread\-Group@{$\sim$\-Thread\-Group}}
\index{$\sim$\-Thread\-Group@{$\sim$\-Thread\-Group}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{$\sim$\-Thread\-Group}]{\setlength{\rightskip}{0pt plus 5cm}$\sim${\bf Thread\-Group} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_ae2b80051564483856034447b06d9f6a0}
Destroy the thread group. All of the running threads should be stopped before the {\bfseries \hyperlink{class_s_c_i_run_1_1_thread_group}{Thread\-Group}} is destroyed. 

\subsection{Member Function Documentation}
\hypertarget{class_s_c_i_run_1_1_thread_group_ac295bade8aee589f6718dfa79edc2a34}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!detach@{detach}}
\index{detach@{detach}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{detach}]{\setlength{\rightskip}{0pt plus 5cm}void detach (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_ac295bade8aee589f6718dfa79edc2a34}


Detach the thread, joins are no longer possible. 

\hypertarget{class_s_c_i_run_1_1_thread_group_aacb529a87120b99faf7c2c44fe662242}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!gang\-Schedule@{gang\-Schedule}}
\index{gang\-Schedule@{gang\-Schedule}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{gang\-Schedule}]{\setlength{\rightskip}{0pt plus 5cm}void gang\-Schedule (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_aacb529a87120b99faf7c2c44fe662242}
Arrange to have the thread\-Group gang scheduled, so that all of the threads will be executing at the same time if multiprocessing resources permit. This interface will typically be employed by the {\itshape \hyperlink{class_s_c_i_run_1_1_thread_a67edc5ea108cbde73d496e9c2f82e524}{Thread\-::parallel}} static method, and will typically not be called directly by user code. Threads added to the group after this call may or may not be included in the schedule gang. \hypertarget{class_s_c_i_run_1_1_thread_group_a6c7abfff648dad193674fc432ad4840d}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!join@{join}}
\index{join@{join}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{join}]{\setlength{\rightskip}{0pt plus 5cm}void join (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_a6c7abfff648dad193674fc432ad4840d}


Wait until all of the threads have completed. 

\hypertarget{class_s_c_i_run_1_1_thread_group_a58bdd429bc5e3ea92297272e61b724e2}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!num\-Active@{num\-Active}}
\index{num\-Active@{num\-Active}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{num\-Active}]{\setlength{\rightskip}{0pt plus 5cm}int num\-Active (
\begin{DoxyParamCaption}
\item[{bool}]{count\-Daemon}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_a58bdd429bc5e3ea92297272e61b724e2}
Return a snapshot of the number of living threads. If {\itshape count\-Daemon} is true, then daemon threads will be included in the count. \hypertarget{class_s_c_i_run_1_1_thread_group_a27f4f9179c10401da437bf3bc7f30e69}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!parent\-Group@{parent\-Group}}
\index{parent\-Group@{parent\-Group}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{parent\-Group}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Thread\-Group}$\ast$ parent\-Group (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_a27f4f9179c10401da437bf3bc7f30e69}
Return the parent {\bfseries \hyperlink{class_s_c_i_run_1_1_thread_group}{Thread\-Group}.} Returns null if this is the default threadgroup. \hypertarget{class_s_c_i_run_1_1_thread_group_a41de8150eff044a237990c271d57ea27}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!resume@{resume}}
\index{resume@{resume}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{resume}]{\setlength{\rightskip}{0pt plus 5cm}void resume (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_a41de8150eff044a237990c271d57ea27}


Resume all of the threads in this thread group. 

\hypertarget{class_s_c_i_run_1_1_thread_group_a8c528baf37154d347366083f0f816846}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!stop@{stop}}
\index{stop@{stop}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{stop}]{\setlength{\rightskip}{0pt plus 5cm}void stop (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_thread_group_a8c528baf37154d347366083f0f816846}


Stop all of the threads in this thread group. 



\subsection{Friends And Related Function Documentation}
\hypertarget{class_s_c_i_run_1_1_thread_group_adbc148eaddd341d7ae4d07c9e9e33bfd}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!Thread@{Thread}}
\index{Thread@{Thread}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{Thread}]{\setlength{\rightskip}{0pt plus 5cm}friend class {\bf Thread}\hspace{0.3cm}{\ttfamily [friend]}}}\label{class_s_c_i_run_1_1_thread_group_adbc148eaddd341d7ae4d07c9e9e33bfd}


\subsection{Member Data Documentation}
\hypertarget{class_s_c_i_run_1_1_thread_group_a892206ba9f41a676afdfdccda75a48c7}{\index{S\-C\-I\-Run\-::\-Thread\-Group@{S\-C\-I\-Run\-::\-Thread\-Group}!s\-\_\-default\-\_\-group@{s\-\_\-default\-\_\-group}}
\index{s\-\_\-default\-\_\-group@{s\-\_\-default\-\_\-group}!SCIRun::ThreadGroup@{S\-C\-I\-Run\-::\-Thread\-Group}}
\subsubsection[{s\-\_\-default\-\_\-group}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Thread\-Group}$\ast$ s\-\_\-default\-\_\-group\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [protected]}}}\label{class_s_c_i_run_1_1_thread_group_a892206ba9f41a676afdfdccda75a48c7}


The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Core/\-Thread/\-Legacy/\hyperlink{_thread_group_8h}{Thread\-Group.\-h}\item 
Core/\-Thread/\-Legacy/\hyperlink{_thread__none_8cc}{Thread\-\_\-none.\-cc}\item 
Core/\-Thread/\-Legacy/\hyperlink{_thread__pthreads_8cc}{Thread\-\_\-pthreads.\-cc}\end{DoxyCompactItemize}
