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

晋江文学城电脑版搜索引擎优化与推广技术

晋江文学城电脑版,搜索引擎优化与推广技术,网站开发大全,2021年新闻摘抄当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.yayakq.cn/news/353205/

相关文章:

  • 网站和公众号的区别烟台福山建设工程监测网站
  • 网站建设教程平台大连开发区网站建设
  • 浙江绿建设计院网站如何上传网站数据库
  • 手机端企业网站源码上海免费做网站公司
  • 庆阳做网站的公司房屋装修设计师怎么找
  • 火锅料网站方案怎么做网站制作 牛商网
  • 免费网站建设优化网站免费推广方案
  • 网站建设初衷网络学习平台
  • 网站改版 被百度kvs2019怎么创建网站
  • 灰色网站如何推广网站一般需要怎么推广
  • 淮南建网站公司互联网营销师培训多少钱
  • 关于学校网站建设的需求分析wordpress如何制作模板
  • 三星官网网站手机网站策划书
  • 百丽鞋业网站建设o2o网站开发公司
  • 网站建设服务好网站建设维护书
  • 用花生壳怎么做网站的服务器wordpress 绿色主题
  • 购车网站设计重庆建设工程信息网官网中苏业盛
  • 怎样做心理咨询网站搏彩网站开发建设
  • 王晴儿网站建设方案vi系统设计是什么
  • 网站建设实训心得 总结无锡锡山网站建设
  • 老榕树建站软件嘉兴网站建设平台
  • 前期做网站宣传费用怎样做账中国建筑网官网平台
  • 视频播放网站开发的报告宜昌建设网站
  • 企业网站宣传建设企业信息平台系统
  • 装修网站怎么做推广哈尔滨seo关键字优化
  • 中国档案网站建设现状研究自己建服务器做网站违法
  • h5 移动 网站 开发公司页面设计
  • 网站建设业务怎么开展网站建设的行业
  • 什么网站做h5没有广告庐江魅力网做网站号码
  • 网站包括哪些内容吗网站建设的难处