本文整理汇总了C++中Message::AddToPool方法的典型用法代码示例。如果您正苦于以下问题:C++ Message::AddToPool方法的具体用法?C++ Message::AddToPool怎么用?C++ Message::AddToPool使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Message
的用法示例。
在下文中一共展示了Message::AddToPool方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CreateMessage
Message* LocalTransport::CreateMessage(uint32_t protocol, uint32_t code)
{
Message* message = 0;
std::map<uint32_t, std::list<Message*> >::iterator it;
it = mMessagePool.find(protocol);
if (it != mMessagePool.end())
{
if (it->second.size())
{
// free message in pool, use that
message = it->second.front();
it->second.pop_front();
}
}
else
{
// initialize a list
mMessagePool[protocol].clear();
}
if(message == 0)
{
// no more messages, create a new one
message = mHandlers.Create(protocol, code);
message->AddToPool(*this);
}
message->AddRef();
return message;
}