summaryrefslogtreecommitdiff
path: root/ACE/ace/Timer_Wheel_T.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/ace/Timer_Wheel_T.cpp')
-rw-r--r--ACE/ace/Timer_Wheel_T.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/ACE/ace/Timer_Wheel_T.cpp b/ACE/ace/Timer_Wheel_T.cpp
index b860c1604dd..d7734e6b120 100644
--- a/ACE/ace/Timer_Wheel_T.cpp
+++ b/ACE/ace/Timer_Wheel_T.cpp
@@ -148,7 +148,7 @@ ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK>::open_i
this->free_list_->resize (prealloc + this->spoke_count_);
- this->wheel_time_.msec (1 << (this->res_bits_ + this->spoke_bits_));
+ this->wheel_time_.msec (1 << (this->res_bits_));
ACE_NEW (this->spokes_, ACE_Timer_Node_T<TYPE>* [this->spoke_count_]);
@@ -834,10 +834,7 @@ ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK>::expire (const ACE_Time_Value& cur_ti
{
// Make sure that we skip past values that have already
// "expired".
- do
- n->set_timer_value (n->get_timer_value () +
- n->get_interval ());
- while (n->get_timer_value () <= cur_time);
+ this->recompute_next_abs_interval_time (n, cur_time);
this->reschedule (n);
}