Generated on Tue Feb 11 2025 17:33:26 for Gecode by doxygen 1.12.0

Simple threads. More...

#include <thread.hpp>

Classes

class  Run
 A real thread. More...
 

Static Public Member Functions

static Mutexm (void)
 Mutex for synchronization.
 
static void run (Runnable *r)
 Construct a new thread and run r.
 
static void sleep (unsigned int ms)
 Put current thread to sleep for ms milliseconds.
 
static unsigned int npu (void)
 Return number of processing units (1 if information not available)
 

Static Public Attributes

static Runidle = NULL
 Idle runners.
 

Detailed Description

Simple threads.

Threads cannot be created, only runnable objects can be submitted for execution by a thread. Threads are pooled to avoid creation/destruction of threads as much as possible.

Definition at line 296 of file thread.hpp.

Member Function Documentation

◆ m()

Mutex * Gecode::Support::Thread::m ( void )
static

Mutex for synchronization.

Definition at line 42 of file thread.cpp.

◆ run()

void Gecode::Support::Thread::run ( Runnable * r)
inlinestatic

Construct a new thread and run r.

After r terminates, r is deleted. After that, the thread terminates.

If the operating system does not support any threads, throws an exception of type Support::OperatingSystemError.

Definition at line 115 of file thread.hpp.

◆ sleep()

void Gecode::Support::Thread::sleep ( unsigned int ms)
inlinestatic

Put current thread to sleep for ms milliseconds.

Definition at line 74 of file none.hpp.

◆ npu()

unsigned int Gecode::Support::Thread::npu ( void )
inlinestatic

Return number of processing units (1 if information not available)

Definition at line 76 of file none.hpp.

Member Data Documentation

◆ idle

Thread::Run * Gecode::Support::Thread::idle = NULL
static

Idle runners.

Definition at line 323 of file thread.hpp.


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