Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
sc::ThreadGrp(3)		     MPQC		      sc::ThreadGrp(3)

NAME
       sc::ThreadGrp - The ThreadGrp abstract class provides a means to	manage
       separate	threads	of control.

SYNOPSIS
       #include	<thread.h>

       Inherits	sc::DescribedClass.

       Inherited by sc::ProcThreadGrp, sc::PthreadThreadGrp, and
       sc::PumaThreadGrp.

   Public Member Functions
       ThreadGrp (const	Ref< KeyVal > &)
       ThreadGrp (const	ThreadGrp &, int nthread=-1)
       virtual void add_thread (int threadnum, Thread *thread)
	   Assigns a Thread object to each thread.
       virtual void add_thread (int threadnum, Thread *thread, int priority)
	   Like	add_thread(threadnum, thread), but assign a priority that the
	   thread is to	use.
       int nthread () const
	   The number of threads that will be run by start_thread.
       void delete_threads ()
       virtual int start_threads ()=0
	   Starts the threads running.
       virtual int wait_threads	()=0
	   Wait	for all	the threads to complete.
       virtual Ref< ThreadLock > new_lock ()=0
	   Return a local object.
       virtual ThreadGrp * clone (int nthread=-1)
	   Create a ThreadGrp like the current one.

   Static Public Member	Functions
       static void set_default_threadgrp (const	Ref< ThreadGrp > &)
       static ThreadGrp	* get_default_threadgrp	()
       static ThreadGrp	* initial_threadgrp (int &argc,	char **argv)

   Protected Attributes
       Thread ** threads_
       int nthread_

   Additional Inherited	Members
Detailed Description
       The ThreadGrp abstract class provides a means to	manage separate
       threads of control.

Member Function	Documentation
   virtual void	sc::ThreadGrp::add_thread (int threadnum, Thread * thread)
       [virtual]
       Assigns a Thread	object to each thread. If 0 is assigned	to a thread,
       then that thread	will be	skipped.

       Reimplemented in	sc::PthreadThreadGrp.

       Referenced by sc::PthreadThreadGrp::add_thread().

   virtual void	sc::ThreadGrp::add_thread (int threadnum, Thread * thread, int
       priority) [virtual]
       Like add_thread(threadnum, thread), but assign a	priority that the
       thread is to use. The member is primarily for experimentation, the
       priority	argument is currently not well defined and ignored.

       Reimplemented in	sc::PthreadThreadGrp.

   virtual ThreadGrp* sc::ThreadGrp::clone (int	nthread	= -1) [virtual]
       Create a	ThreadGrp like the current one.	If nthread is given, the new
       ThreadGrp will attempt to support that number of	threads, but the
       actual number supported may be less. If nthread is -1, the number of
       threads in the current group will be used.

       Reimplemented in	sc::ProcThreadGrp, and sc::PthreadThreadGrp.

   virtual int sc::ThreadGrp::start_threads () [pure virtual]
       Starts the threads running. Thread 0 will be run	by the thread that
       calls start_threads.

       Implemented in sc::ProcThreadGrp, sc::PthreadThreadGrp, and
       sc::PumaThreadGrp.

   virtual int sc::ThreadGrp::wait_threads () [pure virtual]
       Wait for	all the	threads	to complete. This must be called before
       start_threads is	called again or	the object is destroyed.

       Implemented in sc::ProcThreadGrp, sc::PthreadThreadGrp, and
       sc::PumaThreadGrp.

Author
       Generated automatically by Doxygen for MPQC from	the source code.

Version	2.3.1			Sun Aug	30 2020		      sc::ThreadGrp(3)

NAME | SYNOPSIS | Detailed Description | Member Function Documentation | Author

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sc_ThreadGrp&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help