本文整理汇总了C++中ACE_Synch_Options::timeout方法的典型用法代码示例。如果您正苦于以下问题:C++ ACE_Synch_Options::timeout方法的具体用法?C++ ACE_Synch_Options::timeout怎么用?C++ ACE_Synch_Options::timeout使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ACE_Synch_Options
的用法示例。
在下文中一共展示了ACE_Synch_Options::timeout方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: connect_to
NNTDECL_SIGNALS_END
void SocketClientAsync::connect_to(core::NetAddress const& addr, core::Timeout const& tm)
{
// connect.
# ifdef USE_REACTOR_MODE
ACE_Synch_Options opt = ACE_Synch_Options::synch;
if (tm.infinate())
{
opt.set(ACE_Synch_Options::USE_REACTOR, ACE_Time_Value::zero, 0);
}
else
{
opt.timeout(ace::type_cast<ACE_Time_Value>(tm));
}
d_ptr->handler = new _aceasync_handler;
# endif
# ifdef USE_PROACTOR_MODE
d_ptr->handler = new _ace_handler_async;
d_ptr->handler->_owner = this;
# endif
// connect.
# ifdef USE_REACTOR_MODE
int ret = d_ptr->connector.connect(d_ptr->handler,
ace::type_cast<ACE_INET_Addr>(addr),
opt
);
# endif
# ifdef USE_PROACTOR_MODE
int ret = d_ptr->connector.open(d_ptr->handler);
if (ret == 0)
{
ret = d_ptr->connector.connect(ace::type_cast<ACE_INET_Addr>(addr));
}
# endif
if (ret == 0)
{
# ifdef USE_REACTOR_MODE
emit(kSignalSuccess);
# endif
}
else
{
emit(kSignalFailed);
trace_msg("socketclient: failed to connect server.");
}
}