本文整理汇总了C++中ACE_High_Res_Timer::elapsed_time方法的典型用法代码示例。如果您正苦于以下问题:C++ ACE_High_Res_Timer::elapsed_time方法的具体用法?C++ ACE_High_Res_Timer::elapsed_time怎么用?C++ ACE_High_Res_Timer::elapsed_time使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ACE_High_Res_Timer
的用法示例。
在下文中一共展示了ACE_High_Res_Timer::elapsed_time方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: user_time
//.........这里部分代码省略.........
IRC_CLIENT_DEF_IRC_USERMODE;
} // end ELSE
configuration.protocolConfiguration.loginOptions.user.servername =
ACE_TEXT_ALWAYS_CHAR (RPG_NET_PROTOCOL_DEF_IRC_SERVERNAME);
configuration.protocolConfiguration.loginOptions.channel =
ACE_TEXT_ALWAYS_CHAR (IRC_CLIENT_DEF_IRC_CHANNEL);
// populate user/realname
Common_Tools::getCurrentUserName (configuration.protocolConfiguration.loginOptions.user.username,
configuration.protocolConfiguration.loginOptions.user.realname);
// step1db: parse config file (if any)
std::string serverHostname = ACE_TEXT_ALWAYS_CHAR(IRC_CLIENT_DEF_SERVER_HOSTNAME);
unsigned short serverPortNumber = IRC_CLIENT_DEF_SERVER_PORT;
if (!configuration_file.empty ())
do_parseConfigurationFile (configuration_file,
configuration.protocolConfiguration.loginOptions,
serverHostname,
serverPortNumber);
ACE_High_Res_Timer timer;
timer.start();
// step2: do actual work
do_work (configuration,
serverHostname,
serverPortNumber,
num_thread_pool_threads);
// clean up
IRC_handler_module.close ();
timer.stop ();
// debug info
std::string working_time_string;
ACE_Time_Value working_time;
timer.elapsed_time (working_time);
Common_Tools::period2String (working_time,
working_time_string);
ACE_DEBUG ((LM_DEBUG,
ACE_TEXT ("total working time (h:m:s.us): \"%s\"...\n"),
ACE_TEXT (working_time_string.c_str ())));
// stop profile timer...
process_profile.stop ();
// only process profile left to do...
ACE_Profile_Timer::ACE_Elapsed_Time elapsed_time;
elapsed_time.real_time = 0.0;
elapsed_time.user_time = 0.0;
elapsed_time.system_time = 0.0;
if (process_profile.elapsed_time (elapsed_time) == -1)
{
ACE_DEBUG ((LM_ERROR,
ACE_TEXT ("failed to ACE_Profile_Timer::elapsed_time: \"%m\", aborting\n")));
Common_Tools::finalizeLogging ();
// // *PORTABILITY*: on Windows, fini ACE...
//#if defined (ACE_WIN32) || defined (ACE_WIN64)
// if (ACE::fini () == -1)
// ACE_DEBUG ((LM_ERROR,
// ACE_TEXT ("failed to ACE::fini(): \"%m\", continuing\n")));
//#endif
return EXIT_FAILURE;
} // end IF
ACE_Profile_Timer::Rusage elapsed_rusage;
ACE_OS::memset (&elapsed_rusage, 0, sizeof (ACE_Profile_Timer::Rusage));
示例2: run_domain_test
//.........这里部分代码省略.........
TEST_CHECK (! CORBA::is_nil (widened_topic.in ()));
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(! CORBA::is_nil (widened_topic.in ()))")
ACE_TEXT("\n")
));
ACE_ERROR((LM_ERROR,
"We expect to see an error message from delete_participant\n"));
ret = dpf->delete_participant(new_dp.in ());
TEST_CHECK (ret == ::DDS::RETCODE_PRECONDITION_NOT_MET);
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(ret == ::DDS::RETCODE_PRECONDITION_NOT_MET)")
ACE_TEXT("\n")
));
// delete existent topic first time
ret = new_dp->delete_topic(found_topic.in ());
TEST_CHECK (ret == ::DDS::RETCODE_OK);
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(ret == ::DDS::RETCODE_OK)")
ACE_TEXT("\n")
));
// delete existent topic second time
ret = new_dp->delete_topic(new_topic.in ());
TEST_CHECK (ret == ::DDS::RETCODE_OK);
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(ret == ::DDS::RETCODE_OK)")
ACE_TEXT("\n")
));
// an extra delete existent topic
ACE_ERROR((LM_ERROR,
"We expect to see an error message from delete_topic\n"));
ret = new_dp->delete_topic(new_topic.in ());
TEST_CHECK (ret == ::DDS::RETCODE_ERROR);
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(ret == ::DDS::RETCODE_ERROR)")
ACE_TEXT("\n")
));
// Look up the topicdescription after the topic is deleted will
// return nil.
found_topicdescription
= new_dp->lookup_topicdescription(MY_TOPIC);
TEST_CHECK (CORBA::is_nil(found_topicdescription.in ()));
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(CORBA::is_nil(found_topicdescription.in ()))")
ACE_TEXT("\n")
));
// find a non-existent topic - return nil
ACE_High_Res_Timer timer;
ACE_Time_Value elapsedTime(0, 0);
timer.start ();
found_topic = new_dp->find_topic(OTHER_TOPIC, timeout);
timer.stop();
timer.elapsed_time(elapsedTime);
ACE_Time_Value tenMillis (0, 10000);
elapsedTime += tenMillis;
// some systems can be short by up to 10 milliseconds
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(CORBA::is_nil(found_topic.in ()) && elapsedTime.msec() >= find_topic_timeout.msec())")
ACE_TEXT("\n")
));
// delete the existent participant
ret = dpf->delete_participant(new_dp.in ());
TEST_CHECK (ret == ::DDS::RETCODE_OK);
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(ret == ::DDS::RETCODE_OK)")
ACE_TEXT("\n")
));
// lookup the participant after it's deleted - return nil
looked_dp = dpf->lookup_participant(MY_DOMAIN);
TEST_CHECK (CORBA::is_nil(looked_dp.in ()));
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("(%P|%t) run_domain_test: ")
ACE_TEXT("(CORBA::is_nil(looked_dp.in ()))")
ACE_TEXT("\n")
));
return 0;
}
示例3: octetSeq
int
Client::svc (void)
{
try
{
Octet_Seq octetSeq(SIZE_BLOCK);
Char_Seq charSeq(SIZE_BLOCK);
ACE_High_Res_Timer timer;
ACE_OS::printf("Start sending %d Msgs...\n",this->niterations_);
charSeq.length(SIZE_BLOCK);
octetSeq.length(SIZE_BLOCK);
// This sets up the connector, so that we do not incur
// the overhead on the first call in the loop.
server_->sendCharSeq (charSeq);
timer.start ();
ACE_UINT32 client_count = 0;
for (ACE_UINT32 i = 0; i < this->niterations_; ++i)
{
client_count++;
server_->sendCharSeq (charSeq);
//server_->sendOctetSeq (octetSeq);
//ACE_DEBUG ((LM_DEBUG, "."));
}
timer.stop ();
ACE_Time_Value measured;
timer.elapsed_time (measured);
//ACE_DEBUG ((LM_DEBUG, "...finished\n"));
time_t dur = measured.sec () * 1000000 + measured.usec ();
if (dur == 0 || this->niterations_ == 0)
ACE_DEBUG ((LM_DEBUG, "Time not measurable, calculation skipped\n"));
else
{
ACE_DEBUG ((LM_DEBUG,
"Time for %u Msgs: %u usec\n",
this->niterations_,
dur));
ACE_DEBUG ((LM_DEBUG, "Time for 1 Msg: %u usec, %u calls/sec\n",
dur / this->niterations_,
1000000 / (dur / this->niterations_)));
}
for (int c = 0; c < 10; ++c)
server_->shutdown ();
}
catch (const CORBA::Exception& ex)
{
ex._tao_print_exception ("MT_Client: exception raised");
}
return 0;
}