diff options
Diffstat (limited to 'TAO/tao/Connection_Handler.cpp')
-rw-r--r-- | TAO/tao/Connection_Handler.cpp | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/TAO/tao/Connection_Handler.cpp b/TAO/tao/Connection_Handler.cpp index fdfe3ef99e6..d8616c49558 100644 --- a/TAO/tao/Connection_Handler.cpp +++ b/TAO/tao/Connection_Handler.cpp @@ -211,14 +211,9 @@ int TAO_Connection_Handler::handle_input_eh ( ACE_HANDLE h, ACE_Event_Handler *eh) { - if (this->transport ()->acts_as_server () && - this->orb_core_->get_tss_resources ()->upcalls_temporarily_suspended_on_this_thread_) + // If we can't process upcalls just return + if (!this->transport ()->wait_strategy ()->can_process_upcalls ()) { -#if 0 // DON'T IMPLEMENT YET, BUT RECORD THE IDEA FOR POSTERITY - // ACE_Time_Value this->spin_prevention_backoff_delay_; - ACE_OS::usleep (this->spin_prevention_backoff_delay_); - this->spin_prevention_backoff_delay_ = 2 * this->spin_prevention_backoff_delay_ + 1; -#endif if (TAO_debug_level > 6) ACE_DEBUG ((LM_DEBUG, "(%P|%t) Connection_Handler[%d] - not going to handle_input " @@ -229,12 +224,8 @@ TAO_Connection_Handler::handle_input_eh ( return 0; } -#if 0 - this->spin_prevention_backoff_delay_ = 0; -#endif - int result = this->handle_input_internal (h, eh); - + if (result == -1) { this->close_connection (); |