00001 // $Id: Method_Request_Shutdown.cpp 76555 2007-01-24 15:39:09Z johnnyw $ 00002 00003 #include "orbsvcs/Notify/Method_Request_Shutdown.h" 00004 #include "orbsvcs/Notify/ThreadPool_Task.h" 00005 00006 ACE_RCSID(Notify, TAO_Notify_Method_Request_Shutdown, "$Id: Method_Request_Shutdown.cpp 76555 2007-01-24 15:39:09Z johnnyw $") 00007 00008 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00009 00010 TAO_Notify_Method_Request_Shutdown::TAO_Notify_Method_Request_Shutdown (TAO_Notify_ThreadPool_Task* task) 00011 : task_ (task) 00012 { 00013 } 00014 00015 TAO_Notify_Method_Request_Shutdown::~TAO_Notify_Method_Request_Shutdown () 00016 { 00017 } 00018 00019 TAO_Notify_Method_Request_Queueable* 00020 TAO_Notify_Method_Request_Shutdown::copy (void) 00021 { 00022 return new TAO_Notify_Method_Request_Shutdown (this->task_); 00023 } 00024 00025 int 00026 TAO_Notify_Method_Request_Shutdown::execute (void) 00027 { 00028 // Shut down the scheduler by deactivating the activation queue's 00029 // underlying message queue - should pop all worker threads off their 00030 // wait and they'll exit. 00031 this->task_->msg_queue ()->deactivate (); 00032 return -1; 00033 } 00034 00035 TAO_END_VERSIONED_NAMESPACE_DECL