本文整理汇总了C++中poco::SharedPtr::rdbuf方法的典型用法代码示例。如果您正苦于以下问题:C++ SharedPtr::rdbuf方法的具体用法?C++ SharedPtr::rdbuf怎么用?C++ SharedPtr::rdbuf使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类poco::SharedPtr
的用法示例。
在下文中一共展示了SharedPtr::rdbuf方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: handleFrame
bool handleFrame(Connection::Ptr pConnection, Frame::Ptr pFrame)
{
if (pFrame->type() == Frame::FRAME_TYPE_REQU && (pFrame->flags() & Frame::FRAME_FLAG_CONT) == 0)
{
Poco::SharedPtr<ChannelInputStream> pRequestStream = new ChannelInputStream(pConnection, pFrame->type(), pFrame->channel(), _pListener->getTimeout());
Poco::SharedPtr<ChannelOutputStream> pReplyStream;
if ((pFrame->flags() & Frame::FRAME_FLAG_ONEWAY) == 0)
{
Poco::UInt16 flags(0);
if (pFrame->flags() & Frame::FRAME_FLAG_DEFLATE)
flags |= Frame::FRAME_FLAG_DEFLATE;
pReplyStream = new ChannelOutputStream(pConnection, Frame::FRAME_TYPE_REPL, pFrame->channel(), flags);
}
ServerTransport::Ptr pServerTransport = new ServerTransport(*_pListener, pRequestStream, pReplyStream, (pFrame->flags() & Frame::FRAME_FLAG_DEFLATE) != 0);
_pListener->connectionManager().threadPool().start(*pServerTransport);
Poco::Thread::yield();
pServerTransport->waitReady();
pRequestStream->rdbuf()->queue()->handleFrame(pConnection, pFrame);
return true;
}
else return false;
}