processes Namespace Reference

Classes

class  configured_applications
 Manages the initialization file for a set of registered applications. More...
class  ethread
 Provides a platform-independent object for adding threads to a program. More...
class  heartbeat
 Monitors a periodic heartbeat to track a resource's health. More...
class  char_star_array
 a simple wrapper of an array of char *, used by launch_process::break_line(). More...
class  launch_process
 Provides the capability to start processes in a variety of ways to run other applications. More...
class  letter
 A virtual base class for pieces of "mail". Used by the mailbox object. More...
class  mail_stop
 Base class for routes on which letters are automatically delivered. More...
class  mailbox
 Implements a thread safe "mail" delivery system. More...
class  OS_event
 Models an OS-level event so we can represent activities occurring there. More...
class  post_office
 Manages a collection of mailboxes and implements delivery routes for mail. More...
class  process_control
 Provides a bridge to the operating system for information on processes. More...
class  process_entry
 Encapsulates information about OS processes. More...
class  process_entry_array
 a handy class that implements an array of process entries. More...
class  rendezvous
 An inter-process synchronization primitive. More...
class  safe_callback
 A reasonably easy way to make callbacks safe from shutdown ordering issues. More...
class  callback_data_block
 a simple place-holder that anonymizes the type passed to the callback. More...
class  safe_roller
 Implements a thread-safe roller object. More...
class  state_machine
 Monitors objects with multiple states and the transitions between states. More...
class  transition_map
 The transition_map manages state machines and causes state changes to occur. More...
class  thread_cabinet
 Manages a collection of threads. More...

Functions

const char * PRODUCT_HEADING ()
const char * ASSIGN_TOKEN ()
const char * SEPARATOR_TOKEN ()
const char * SEPARATOR_TEXT ()
const char * PARMS_HEADING ()
const char * ONESHOT_HEADING ()
mutex__process_synchronizer ()
int_set __our_kids ()
astring general_lock_name (const astring &root_part)
astring unix_rendez_file (const astring &lock_name)
void safe_add (int &to_change, int addition)
 thread-safe integer addition.

Variables

const int MAXIMUM_CREATE_ATTEMPTS = 20
const int MINIMUM_SLEEP_PERIOD = 10
const int MAXIMUM_SLEEP_PERIOD = 200
const int SNOOZE_FOR_RETRY = 100
const int MAILBOX_BITS = 9
const int CLEANING_INTERVAL = 14 * SECOND_ms
const int SNOOZE_TIME_FOR_POSTMAN = 42
const int DELIVERIES_ALLOWED = 350

Function Documentation

int_set processes::__our_kids (  ) 

Definition at line 58 of file launch_process.cpp.

Referenced by processes::launch_process::run().

mutex& processes::__process_synchronizer (  ) 

Definition at line 53 of file launch_process.cpp.

Referenced by processes::launch_process::run().

const char* processes::ASSIGN_TOKEN (  ) 
astring processes::general_lock_name ( const astring root_part  ) 

Definition at line 50 of file rendezvous.cpp.

Referenced by processes::rendezvous::rendezvous().

const char* processes::ONESHOT_HEADING (  ) 
const char* processes::PARMS_HEADING (  ) 
const char* processes::PRODUCT_HEADING (  ) 
void processes::safe_add ( int &  to_change,
int  addition 
)

thread-safe integer addition.

the number passed in "addition" is atomically added to the number referenced in "to_change". this allows thread-safe manipulation of a simple number.

const char* processes::SEPARATOR_TEXT (  ) 
const char* processes::SEPARATOR_TOKEN (  ) 
astring processes::unix_rendez_file ( const astring lock_name  ) 

Definition at line 55 of file rendezvous.cpp.

References mkdir, and basis::astring::observe().

Referenced by processes::rendezvous::rendezvous().


Variable Documentation

const int processes::CLEANING_INTERVAL = 14 * SECOND_ms

Definition at line 45 of file post_office.cpp.

Referenced by processes::post_office::deliver_mail_on_route().

Definition at line 53 of file post_office.cpp.

Referenced by processes::post_office::deliver_mail_on_route().

const int processes::MAILBOX_BITS = 9

Definition at line 36 of file mailbox.cpp.

Definition at line 48 of file ethread.cpp.

Referenced by processes::ethread::start().

Definition at line 55 of file ethread.cpp.

Definition at line 52 of file ethread.cpp.

Referenced by processes::ethread::ethread().

const int processes::SNOOZE_FOR_RETRY = 100

Definition at line 58 of file ethread.cpp.

Referenced by processes::ethread::start().

Definition at line 48 of file post_office.cpp.

Generated on Sat Jan 28 04:25:49 2012 for hoople2 project by  doxygen 1.6.3