本文整理汇总了C++中ConnectionPtr::disown方法的典型用法代码示例。如果您正苦于以下问题:C++ ConnectionPtr::disown方法的具体用法?C++ ConnectionPtr::disown怎么用?C++ ConnectionPtr::disown使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ConnectionPtr
的用法示例。
在下文中一共展示了ConnectionPtr::disown方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: destroy
void HttpServer::destroy(ConnectionPtr connection, bool release)
{
connection->markToBeDeleted();
{
std::lock_guard<std::mutex> lock(connections_mutex_);
auto it = std::find_if(std::begin(connections_),
std::end(connections_),
[&](ConnectionPtr conn)
{ return connection == conn; });
if (it == std::end(connections_))
{
return;
}
else
{
--connection_count_;
connections_.erase(it);
}
}
if (release)
{
connection->disown();
HTTP::Connection::release(connection);
}
}
示例2: connection_notify_request
void HttpServer::connection_notify_request(ConnectionPtr connection,
HTTP::Request&& request)
{
if (sink_)
{
connection->disown();
sink_(connection, std::forward<HTTP::Request>(request));
}
else
{
connection->response().setCode(HTTP::HttpCode::NoContent).setBody("");
HTTP::setShouldConnectionBeClosed(request, connection->response());
connection->sendResponse();
}
}