summaryrefslogtreecommitdiff
path: root/ACE/tests/Timer_Queue_Reference_Counting_Test.cpp
diff options
context:
space:
mode:
authorsma <sma@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2008-02-01 13:27:15 +0000
committersma <sma@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2008-02-01 13:27:15 +0000
commiteaa6c4241e2ddb7dce1cffdeed7741d8e2853f3e (patch)
tree890264c7aac793c7699f901747b16c5604a11d13 /ACE/tests/Timer_Queue_Reference_Counting_Test.cpp
parent893393224ef4c40302f1aabb9eb5f24df0d37eec (diff)
downloadATCD-eaa6c4241e2ddb7dce1cffdeed7741d8e2853f3e.tar.gz
ChangeLogTag: Fri Feb 01 13:25:00 UTC 2008 Simon Massey <sma@prismtech.com>
Diffstat (limited to 'ACE/tests/Timer_Queue_Reference_Counting_Test.cpp')
-rw-r--r--ACE/tests/Timer_Queue_Reference_Counting_Test.cpp32
1 files changed, 15 insertions, 17 deletions
diff --git a/ACE/tests/Timer_Queue_Reference_Counting_Test.cpp b/ACE/tests/Timer_Queue_Reference_Counting_Test.cpp
index f33ab9144ce..d0dcafff858 100644
--- a/ACE/tests/Timer_Queue_Reference_Counting_Test.cpp
+++ b/ACE/tests/Timer_Queue_Reference_Counting_Test.cpp
@@ -35,6 +35,19 @@ static int debug = 0;
static const char *one_second_timeout = "one second timeout";
static const char *two_second_timeout = "two second timeout";
+namespace
+{
+ inline void WAIT_FOR_NEXT_EVENT (ACE_Timer_Queue &timer_queue)
+ {
+ ACE_Time_Value const earliest_time = timer_queue.earliest_time ();
+ ACE_Time_Value const time_of_day = timer_queue.gettimeofday ();
+ if (earliest_time > time_of_day)
+ {
+ ACE_OS::sleep (earliest_time - time_of_day);
+ }
+ }
+}
+
class Reference_Counted_Event_Handler : public ACE_Event_Handler
{
public:
@@ -316,21 +329,7 @@ expire (ACE_Timer_Queue &timer_queue,
for (int i = 0; i < events;)
{
- ACE_Time_Value sleep_time;
-
- ACE_Time_Value earliest_time =
- timer_queue.earliest_time ();
-
- ACE_Time_Value time_of_day =
- timer_queue.gettimeofday ();
-
- if (earliest_time > time_of_day)
- sleep_time =
- earliest_time - time_of_day;
- else
- sleep_time = ACE_Time_Value::zero;
-
- ACE_OS::sleep (sleep_time);
+ WAIT_FOR_NEXT_EVENT (timer_queue);
result =
expire_function (timer_queue);
@@ -479,8 +478,7 @@ simple (ACE_Timer_Queue &timer_queue)
for (int i = 0; i < events;)
{
- ACE_OS::sleep (timer_queue.earliest_time () -
- timer_queue.gettimeofday ());
+ WAIT_FOR_NEXT_EVENT (timer_queue);
result =
timer_queue.expire ();