本文整理汇总了C++中MemoryMap::alloc方法的典型用法代码示例。如果您正苦于以下问题:C++ MemoryMap::alloc方法的具体用法?C++ MemoryMap::alloc怎么用?C++ MemoryMap::alloc使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MemoryMap
的用法示例。
在下文中一共展示了MemoryMap::alloc方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: populateCache
virtual void populateCache(const Fingerprint &fileId, const DenseDataPtr &respondData) {
{
MemoryMap::write_iterator writer(mData);
if (mData.alloc(respondData->length(), writer)) {
bool newentry = writer.insert(fileId, respondData->length());
if (newentry) {
SILOG(transfer,debug,fileId << " created " << *respondData);
CacheData *cdata = new CacheData;
*writer = cdata;
cdata->mSparse.addValidData(respondData);
writer.use();
} else {
CacheData *cdata = static_cast<CacheData*>(*writer);
cdata->mSparse.addValidData(respondData);
if (SILOGP(transfer,debug)) {
SILOGNOCR(transfer,debug,fileId << " already exists: ");
std::stringstream rangeListStream;
Range::printRangeList(rangeListStream,cdata->mSparse, (Range)(*respondData));
SILOGNOCR(transfer,debug,rangeListStream.str());
}
writer.update(cdata->mSparse.getSpaceUsed());
}
}
}
CacheLayer::populateParentCaches(fileId, respondData);
}