当前位置: 首页 > news >正文

专做视频素材的网站深圳推广系统

专做视频素材的网站,深圳推广系统,天津实用网站建设平台,从客户—管理者为某一公司做一份电子商务网站管理与维护的方案当Page Cache接收了一个来自Central Cache的Span,根据Span的起始页的_pageId来对前一页所对应的Span进行查找,并判断该Span,是否处于使用状态,从而看是否可以合并,如果可以合并继续向前寻找。 当该Span前的空闲Span查…

当Page Cache接收了一个来自Central Cache的Span,根据Span的起始页的_pageId来对前一页所对应的Span进行查找,并判断该Span,是否处于使用状态,从而看是否可以合并,如果可以合并继续向前寻找。

当该Span前的空闲Span查找完毕后,就根据当前Span的_pageId+Span中的页数_n来向后查找后一页的Span是否为空闲状态,如果为空闲状态就继续向后合并。

这样就可以将切小的内存合并成大的Span,再次申请内存时,可以再从大Span中切分出小的,这样一来就大大减少了内存碎片,提高了空间的利用效率。

// 释放空闲span回到Pagecache,并合并相邻的span
void PageCache::ReleaseSpanToPageCache(Span* span)
{//将Central不用的Span进行回收//同时查找该Span的前后页是否属于空闲状态while (1){PAGE_ID prevId = span->_pageId - 1;auto ret = _idSpanMap.find(prevId);if (ret == _idSpanMap.end())//没有找到说明没有该页号,直接break{break;}Span* prevspan = ret->second;if (prevspan->_isUse == true)//如果前面的页处于使用状态,直接break{break;}if (span->_n + prevspan->_n > 128){break;}span->_pageId = prevspan->_pageId;span->_n += prevspan->_n;_spanList[prevspan->_n].Erase(prevspan);delete prevspan;}while (1){PAGE_ID nextId = span->_pageId + span->_n;auto ret = _idSpanMap.find(nextId);if (ret == _idSpanMap.end())//没有找到说明没有该页号,直接break{break;}Span* nextspan = ret->second;if (nextspan->_isUse == true)//如果前面的页处于使用状态,直接break{break;}if (span->_n + nextspan->_n > 128){break;}span->_n += nextspan->_n;_spanList[nextspan->_n].Erase(nextspan);delete nextspan;}if (span->_n == 128){int x = 0;}_spanList[span->_n].PushFront(span);span->_isUse = false;_idSpanMap[span->_pageId] = span;_idSpanMap[span->_pageId + span->_n - 1] = span;
}

至此一个完整的申请回收逻辑就完成了,博主也对整个代码进行了测试和改动,可以完成正常内存申请释放的功能以及对内存碎片的回收利用。后面博主还会对代码进行进一步的优化和改进,从而对其中一些不足之处进行补充。

http://www.ds6.com.cn/news/15568.html

相关文章:

  • 邯郸做移动网站报价百度热点榜单
  • 网站建设科技有限公司香飘飘奶茶软文
  • 网站的前端和后端做外贸怎么推广
  • 网站设计师的工作内容aso优化平台有哪些
  • 秦皇岛网站制作代理商快速seo关键词优化技巧
  • 企业网站制作流程图宁波网站推广平台效果好
  • 新疆电力建设有限公司网站百度提交入口地址在哪
  • 湖南省住房建设厅网站厦门百度seo公司
  • 做视频网站版权怎么解决app001推广平台
  • 建设一个自己的网站首页东莞seo建站推广费用
  • 刘涛给孩子网站做的广告seo首页关键词优化
  • 做任务给佣金的网站有哪些什么是关键词广告
  • 开源镜像网站怎么做竞价推广价格
  • aspcms手机网站怎么做推广平台
  • 网站源码下载插件app投放渠道有哪些
  • 基于web旅游网站的建设指数是什么
  • 沈阳市建网站关键词seo排名公司
  • 如何设计网络百度快照怎么优化排名
  • iis怎么做网站空间手机app免费下载
  • php和java开发网站东莞网站营销
  • 怎么写网站建设与运营维普网论文收录查询
  • 呼市做网站公司seo网络推广员招聘
  • 服饰网站建设微信运营工具
  • 百度小程序是什么个人博客seo
  • 做网站婚介简历怎么写教育培训机构有哪些
  • 做网站所需要的项什么是电商平台推广
  • ckeditor 转wordpress江门seo
  • 著名的网站制作公司网站关键词排名手机优化软件
  • 朝阳区互联网公司排名宁波seo推广费用
  • 网站开源系统注册域名在哪里注册