diff options
Diffstat (limited to 'TAO/tao/Timeprobe.h')
-rw-r--r-- | TAO/tao/Timeprobe.h | 143 |
1 files changed, 95 insertions, 48 deletions
diff --git a/TAO/tao/Timeprobe.h b/TAO/tao/Timeprobe.h index 59007bf7105..85bf06852bd 100644 --- a/TAO/tao/Timeprobe.h +++ b/TAO/tao/Timeprobe.h @@ -1,67 +1,114 @@ // $Id$ -#if !defined (ACE_TIMEPROBE_H) -#define ACE_TIMEPROBE_H +//#define ACE_COMPILE_TIMEPROBES +//#define ACE_ENABLE_TIMEPROBES +//#define ACE_MT_TIMEPROBES +//#define ACE_TSS_TIMEPROBES -#include "ace/Synch.h" +#include "ace/Timeprobe.h" -class ACE_Timeprobe -{ - // @@ Please comment me. -public: - static ACE_Timeprobe &instance (void); +static const char *TAO_Timeprobe_Description[] = +{ + + "TAO Timeprobe Description Table", + + "GIOP::send_request - start", + "GIOP::send_request - end", + + "GIOP::recv_request - start", + "GIOP::recv_request - end", - void timeprobe (const char *id); + "GIOP::read_buffer - start", + "GIOP::read_buffer - end", - void print_times (void) const; + "GIOP::RequestHeader_init - start", + "GIOP::RequestHeader_init - end", - void reset (void); + "GIOP::LocateRequestHeader_init - start", + "GIOP::LocateRequestHeader_init - end", - void destroy (void); + "Server_Connection_Handler::send_response - start", + "Server_Connection_Handler::send_response - end", -private: - ACE_Timeprobe (void); - ~ACE_Timeprobe (void); + "Server_Connection_Handler::handle_input - start", + "Server_Connection_Handler::handle_input - end", - ACE_Timeprobe (const ACE_Timeprobe &); - // Not implemented. + "Client_Connection_Handler::send_request - start", + "Client_Connection_Handler::send_request - end", -private: - static ACE_Timeprobe *instance_; + "CORBA_ORB::run - start", + "CORBA_ORB::run - end", - enum { SLOTS = 8192 }; + "POA::locate_poa_i - start", + "POA::locate_poa_i - end", - ACE_SYNCH_MUTEX mutex_; + "POA::locate_poa_and_servant_i - start", + "POA::locate_poa_and_servant_i - end", - u_int current_slot_; + "POA::find_servant - start", + "POA::find_servant - end", - struct timeprobe_t - { - const char *id_; - ACE_hrtime_t time_; - ACE_thread_t thread_; - }; + "POA::dispatch_servant - start", + "POA::dispatch_servant - end", + + "POA::parse_key - start", + "POA::parse_key - end", + + "Servant::_dispatch - start", + "Servant::_dispatch - end", - timeprobe_t timeprobes [SLOTS]; - // @@ Don't we have a macro that does this? - friend class null_friend_to_avoid_compiler_warning_about_no_friends; }; -#if defined (ACE_ENABLE_TIMEPROBES) -# define ACE_TIMEPROBE_RESET ACE_Timeprobe::instance ().reset () -# define ACE_TIMEPROBE(id) ACE_Timeprobe::instance ().timeprobe (id) -# define ACE_TIMEPROBE_PRINT ACE_Timeprobe::instance ().print_times () -# define ACE_TIMEPROBE_FINI ACE_Timeprobe::instance ().destroy () -#else -# define ACE_TIMEPROBE_RESET -# define ACE_TIMEPROBE(id) -# define ACE_TIMEPROBE_PRINT -# define ACE_TIMEPROBE_FINI -#endif /* ACE_ENABLE_TIMEPROBES */ - -#if defined (__ACE_INLINE__) -#include "Timeprobe.i" -#endif /* __ACE_INLINE__ */ - -#endif /* ACE_TIMEPROBE_H */ +enum +{ + TAO_TIMEPROBE_DESCRIPTION_TABLE, + + TAO_GIOP_SEND_REQUEST_START, + TAO_GIOP_SEND_REQUEST_END, + + TAO_GIOP_RECV_REQUEST_START, + TAO_GIOP_RECV_REQUEST_END, + + TAO_GIOP_READ_BUFFER_START, + TAO_GIOP_READ_BUFFER_END, + + TAO_GIOP_REQUEST_HEADER_INIT_START, + TAO_GIOP_REQUEST_HEADER_INIT_END, + + TAO_GIOP_LOCATE_REQUEST_HEADER_INIT_START, + TAO_GIOP_LOCATE_REQUEST_HEADER_INIT_END, + + TAO_SERVER_CONNECTION_HANDLER_SEND_RESPONSE_START, + TAO_SERVER_CONNECTION_HANDLER_SEND_RESPONSE_END, + + TAO_SERVER_CONNECTION_HANDLER_HANDLE_INPUT_START, + TAO_SERVER_CONNECTION_HANDLER_HANDLE_INPUT_END, + + TAO_CLIENT_CONNECTION_HANDLER_SEND_REQUEST_START, + TAO_CLIENT_CONNECTION_HANDLER_SEND_REQUEST_END, + + TAO_CORBA_ORB_RUN_START, + TAO_CORBA_ORB_RUN_END, + + TAO_POA_LOCATE_POA_I_START, + TAO_POA_LOCATE_POA_I_END, + + TAO_POA_LOCATE_POA_AND_SERVANT_I_START, + TAO_POA_LOCATE_POA_AND_SERVANT_I_END, + + TAO_POA_FIND_SERVANT_START, + TAO_POA_FIND_SERVANT_END, + + TAO_POA_DISPATCH_SERVANT_START, + TAO_POA_DISPATCH_SERVANT_END, + + TAO_POA_PARSE_KEY_START, + TAO_POA_PARSE_KEY_END, + + TAO_SERVANT_DISPATCH_START, + TAO_SERVANT_DISPATCH_END, + + TAO_LAST_TIMEPROBE_ENTRY + +}; |