diff options
Diffstat (limited to 'trunk/ACE/examples/Timer_Queue/main_thread.cpp')
-rw-r--r-- | trunk/ACE/examples/Timer_Queue/main_thread.cpp | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/trunk/ACE/examples/Timer_Queue/main_thread.cpp b/trunk/ACE/examples/Timer_Queue/main_thread.cpp new file mode 100644 index 00000000000..7287e0ed263 --- /dev/null +++ b/trunk/ACE/examples/Timer_Queue/main_thread.cpp @@ -0,0 +1,58 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// examples +// +// = FILENAME +// main_thread.cpp +// +// = DESCRIPTION +// Implements an threaded timer queue. +// This code exercises the Timer_Queue_Test_Driver class using +// threads. +// +// = AUTHORS +// Douglas Schmidt <schmidt@cs.wustl.edu> && +// Sergio Flores-Gaitan <sergio@cs.wustl.edu> +// +// ============================================================================ + +// The following #pragma is needed to disable a warning that occurs +// in MSVC 6 due to the overly long debugging symbols generated for +// the std::auto_ptr<Timer_Queue_Test_Driver<...> > template +// instance used by some of the methods in this file. +#ifdef _MSC_VER +# pragma warning(disable: 4786) /* identifier was truncated to '255' + characters in the browser + information */ +#endif /* _MSC_VER */ + +#include "ace/OS_main.h" +#include "ace/Auto_Ptr.h" +#include "Driver.h" +#include "Thread_Timer_Queue_Test.h" + +ACE_RCSID (Timer_Queue, + main_thread, + "$Id$") + +typedef Timer_Queue_Test_Driver<Thread_Timer_Queue, + Input_Task, + Input_Task::ACTION> + THREAD_TIMER_QUEUE_TEST_DRIVER; + +int +ACE_TMAIN (int, ACE_TCHAR *[]) +{ + // Auto ptr ensures that the driver memory is released + // automatically. + THREAD_TIMER_QUEUE_TEST_DRIVER *tqtd; + ACE_NEW_RETURN (tqtd, Thread_Timer_Queue_Test_Driver, -1); + + auto_ptr <THREAD_TIMER_QUEUE_TEST_DRIVER> driver (tqtd); + + return driver->run_test (); +} + |