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

广州公司建站新冠止咳药哪个效果好

广州公司建站,新冠止咳药哪个效果好,深汕特别合作区公共事业局,网站建设管理工作情况的通报文章目录 Page Cache层释放内存的流程Page Cache层释放内存的实现 Page Cache层释放内存的流程 如果central cache释放回一个span#xff0c;则依次寻找span的前后page id的没有在使用的空闲span#xff0c;看是否可以合并#xff0c;如果合并继续向前寻找。这样就可以将切… 文章目录 Page Cache层释放内存的流程Page Cache层释放内存的实现 Page Cache层释放内存的流程 如果central cache释放回一个span则依次寻找span的前后page id的没有在使用的空闲span看是否可以合并如果合并继续向前寻找。这样就可以将切小的内存合并收缩成大的span减少内存碎片。 Page Cache层释放内存的实现 void PageCache::ReleaseSpanToPageCache(Span* span) {// 对span前后的页尝试进行合并缓解内存碎片问题//补充点1:向前合并的逻辑介绍while (1){PAGE_ID prevId span-_pageId - 1;auto ret _idSpanMap.find(prevId);// 前面的页号没有不合并了if (ret _idSpanMap.end()){break;}// 前面相邻页的span在使用不合并了Span* prevSpan ret-second;if (prevSpan-_isUse true){break;}// 合并出超过128页的span没办法管理不合并了if (prevSpan-_n span-_n NPAGES-1){break;}span-_pageId prevSpan-_pageId;span-_n prevSpan-_n;_spanLists[prevSpan-_n].Erase(prevSpan);delete prevSpan;}// 向后合并//补充点2:向后合并的逻辑介绍while (1){PAGE_ID nextId span-_pageId span-_n;auto ret _idSpanMap.find(nextId);if (ret _idSpanMap.end()){break;}Span* nextSpan ret-second;if (nextSpan-_isUse true){break;}if (nextSpan-_n span-_n NPAGES-1){break;}span-_n nextSpan-_n;_spanLists[nextSpan-_n].Erase(nextSpan);delete nextSpan;}_spanLists[span-_n].PushFront(span);span-_isUse false;_idSpanMap[span-_pageId] span;_idSpanMap[span-_pageIdspan-_n-1] span; } 补充点1:向前合并的逻辑介绍 向前合并代码 while (1){PAGE_ID prevId span-_pageId - 1;auto ret _idSpanMap.find(prevId);// 前面的页号没有不合并了if (ret _idSpanMap.end()){break;}// 前面相邻页的span在使用不合并了Span* prevSpan ret-second;if (prevSpan-_isUse true){break;}// 合并出超过128页的span没办法管理不合并了if (prevSpan-_n span-_n NPAGES-1){break;}span-_pageId prevSpan-_pageId;span-_n prevSpan-_n;_spanLists[prevSpan-_n].Erase(prevSpan);delete prevSpan;}我们假设Central Cache还回来了一个3页的span _pageid 2000 而我们向前合并就是要找前面_pageid为1999的span 假设1999有且没被使用 合并两个span 然后继续往前合直到不能合了为止 不能合情况 1.前面对应的页号不存在 2.前面的页号正在使用 3.和前面的span加起来页数超过128 补充点2:向后合并的逻辑介绍 向后合并代码 while (1){PAGE_ID nextId span-_pageId span-_n;auto ret _idSpanMap.find(nextId);if (ret _idSpanMap.end()){break;}Span* nextSpan ret-second;if (nextSpan-_isUse true){break;}if (nextSpan-_n span-_n NPAGES-1){break;}span-_n nextSpan-_n;_spanLists[nextSpan-_n].Erase(nextSpan);delete nextSpan;}前面已经向前合并了那么之后我们就要看看向后还能不能合并 我们向后合并也是 现在的span的_pageid 页数在该场景中也就是199211 2003所以我们应该向后找2003页的span看有没有。 假设有 合并两span 然后也继续往后合直到不能合了为止 不能合情况 1.后面对应的页号不存在 2.后面的页号正在使用 3.和后面的span加起来页数超过128
http://www.w-s-a.com/news/94607/

相关文章:

  • 做网站的公司一年能赚多少钱wordpress作者增加分类插件
  • 苏州尚云网站建设专业摄影网站推荐
  • 020网站开发微信公众号直接链接网站怎么做
  • 学做烘焙的网站某网站注册需要邮箱是怎么弄
  • 网站的特效代码公司网站开发的工作内容
  • 网站制作哪家好商城网站建设预算要多少钱
  • 怎么做律所的官方网站微网站可以做商城吗
  • 通用网站后台管理系统(php版)网站备案ip查询网站查询
  • 制作网站代码吗江阴网站建设推广
  • 汕头建网站wordpress文章网址采集
  • 十大景观设计网站用vue框架做的网站
  • 福建省建设监理网官方网站做外贸网站卖什么东西好
  • 公司做网站排名东莞关键词优化推广
  • 连云港做企业网站公司全网营销与seo
  • 电子毕业设计代做网站wordpress 插件放在那
  • 黄石规划建设局网站怎么做存储网站
  • 网站安装wordpress滨江网站建设
  • 河南官网网站建设一般使用的分辨率显示密度是
  • dedecms新网站 上传到万网的空间宝洁公司网站做的怎么样
  • 网站建设语录优惠券的网站怎么做的
  • 白山市住房和建设局网站有实力高端网站设计地址
  • 沧州网站建设制作设计优化深圳网站自然优化
  • 企业做网站 乐云seowordpress中修改html
  • 网站细节门户wordpress主题下载
  • 全景网站模版wordpress套餐
  • 华为云建网站dw制作一个手机网站模板
  • 定陶菏泽网站建设河北新出现的传染病
  • 商业网站建设案例教程郑州服装网站建设公司
  • 网站内容怎么做专业的企业管理软件
  • 深圳网站制作公司排名微网站和微信公共平台的区别