This program manages a priority queue of events, sorted by the deadline of each event, in an optimized, efficient manner. Uses pthreads, and C++ STL. See test.cpp for usage example. :: Classes :: ActionQueue - Represents a queue of deadline-based actions which runs in its own thread, where new actions may be added into the queue at any time, and actions are invoked once their deadline has expired TimeSpan - Represents an exact amount of time DateTime - Represents a Date and a Time Event - Represents a waitable event Thread - Represents a thread Attr - Represents a thread attribute Cond - Represents a condition variable Mutex - Represents a mutually exclusive (lockable) object Lock - Use to exclusively lock a Mutex CallMemFun - Creates a function that calls a member function of some object ScheduledMessage - Used to represent a message which should be displayed after a specified period of time test.cpp - Creates a sample queue of ScheduledMessages and waits for them to complete