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

wordpress xss泉州百度关键词优化

wordpress xss,泉州百度关键词优化,网和网站的区别,吉林省城乡建设官方网站内存泄漏 在执行一个长期运行的应用程序时#xff0c;应用程序分配的内存没有被释放#xff0c;导致可用内存逐渐减少#xff0c;最终可能导致浏览器崩溃或者应用性能严重下降的情况#xff0c;即 JS 内存泄漏 可能导致内存泄漏的场景 不断创建全局变量未及时清理的闭包应用程序分配的内存没有被释放导致可用内存逐渐减少最终可能导致浏览器崩溃或者应用性能严重下降的情况即 JS 内存泄漏 可能导致内存泄漏的场景 不断创建全局变量未及时清理的闭包如果闭包中引用了外部的变量而这个变量又没有被及时释放就可能发生内存泄漏。DOM元素的引用如果一个DOM元素被保存在一个JavaScript变量中但是页面上该DOM元素被移除这个变量仍然引用着这个DOM元素导致它无法被垃圾回收。事件监听器如果一个DOM元素添加了事件监听器但在移除该元素之前没有移除事件监听器则可能发生内存泄漏。循环引用两个对象相互引用导致它们不能被垃圾回收。现代浏览器改用标记清除的垃圾回收机制已解决了此问题 vue 中内存泄漏的场景 组件销毁时未清除全局变量的引用、函数引用、全局事件、自定义事件、定时器。 // 全局变量引用vue实例上的响应式变量 window.list this.list // 全局变量引用vue实例上的函数 window.copy this.copy如何避免内存泄漏 避免创建全局变量。使用严格模式或者let/const声明变量。及时解除DOM元素的引用。在移除DOM元素之前移除相关的事件监听器。使用弱引用或者引用计数来处理循环引用的问题。如使用 WeakMap 和WeakSet使用工具或者浏览器自带的开发者工具检测和分析内存使用情况找出潜在的内存泄漏。编写单元测试以确保内存的正确释放。使用try/catch/finally来确保资源在异常发生时也能被正确释放。定期进行垃圾回收例如在JavaScript中可以使用window.gc()来强制进行垃圾回收但这不是标准方法并且不建议在生产环境中使用。 检测 JS 内存泄漏的方法 可使用浏览器自带的开发者工具 上图中HEAP值随时间一直上升即发生了内存泄漏 正常的内存应该如下图每隔一段时间就会进行垃圾回收下降 垃圾回收 GC GC 是垃圾回收Garbage Collection的缩写是由 JavaScript 引擎自动执行的自动内存管理机制用于检测和清除不再使用的数据以释放内存空间。 垃圾回收的目的是减少内存泄漏和提高程序的性能。 JS 垃圾回收的算法 引用计数之前 通过跟踪每个对象被引用的次数来确定对象是否为垃圾。 逻辑 当一个对象被创建时其引用计数器初始化为1。当该对象被其他对象引用时引用计数器加1。当该对象不再被其他对象引用时引用计数器减1。当引用计数器减至0时意味着该对象不再被引用可以被垃圾收集器回收。 // 创建一个对象 let obj { name: test }; // 创建一个引用指向对象 let ref1 obj;//引用计数1 1 ​ // 创建另一个引用指向对象 let ref2 obj;//引用计数1 2 ​ // 引用失效 ref1 null;//引用计数-1 1 ref2 null;//引用计数-1 0 ​ // 引用计数为0对象可以被回收优点 实时回收在对象不再被引用时立即回收不需要等待垃圾收集器的运行。这可以减少内存占用和提高程序的性能。简单高效实现起来相对容易不需要复杂的算法和数据结构。 缺点 两个或多个对象相互引用时无法被回收导致内存泄漏引用计数需要占用额外的内存空间而且每次添加、删除引用都需要更新计数增加了额外的开销。 标记清除现代 通过标记不再使用的对象然后清除这些对象的内存空间以便后续的内存分配使用。 逻辑 在标记阶段垃圾回收器会对内存中的所有对象进行遍历从根对象开始通常是全局对象递归地遍历对象的引用关系。对于每个被访问到的对象垃圾回收器会给它打上标记表示该对象是可达的即不是垃圾。在清除阶段垃圾回收器会遍历整个内存对于没有标记的对象即被判定为垃圾的对象会被立即回收释放内存空间。 优点 简单有效算法相对简单容易实现可清除循环引用 缺点 会暂停程序的执行进行垃圾回收操作。当堆中对象较多时可能会导致明显的停顿影响用户体验。会在回收过程中产生大量的不连续的、碎片化的内存空间。这可能导致后续的内存分配难以找到足够大的连续内存块从而使得内存的利用率降低。 标记整理优化 在标记清除的基础上增加了整理 逻辑 在标记阶段标记活动对象在整理阶段将内存中的活动对象移动到一端使得空闲空间连续并且没有碎片化。在清除阶段清除垃圾回收内存 优点 解决了标记-清除算法产生的碎片化问题使得内存空间得到更好的利用减少了空间的浪费。 缺点 会暂停程序的执行进行垃圾回收操作。当堆中对象较多时可能会导致明显的停顿影响用户体验。 V8 引擎的垃圾回收策略 V8是一种由Google开发的用于执行JavaScript 的开源引擎用于浏览器和Node.js 分代式垃圾回收 将内存划分为新生代Young Generation和老生代Old Generation两个代 新生代存放的是存活时间较短的对象经过一次垃圾回收后,就被释放回收掉采用了基于Scavenge算法的快速垃圾回收策略通过将内存分为两个半空间来进行垃圾回收优化了对象的分配和回收过程。老生代存放的是存活时间较长的对象经过多次垃圾回收后仍存在采用了基于标记-整理-清除算法的全垃圾回收策略通过对整个堆进行标记和整理以减少内存的碎片化提高内存利用率。 更多详情可参考 https://zhuanlan.zhihu.com/p/689678104
http://www.hkea.cn/news/14263520/

相关文章:

  • 广州市律师网站建设价格wordpress的模板文件
  • 网站建设参考文献龙岩网站建设方式
  • 企业网站四大类型网站建设模块下载
  • 免费申请自己的网站淘宝网页设计培训班
  • 怎么做网站子页网站开发量
  • 设计类的网站嘉兴网络公司变更
  • 中国建设银行官网站周波成都短视频代运营
  • 沈阳做企业网站哪家好网站开发服务器架设
  • 网站优化分析网站搭建 成都
  • 做爰视频免费的网站重庆网红景点洪崖洞已挤满游客
  • 汕头网站建设备案wordpress恢复网站
  • 网商之窗挂外贸网站seo优化方案
  • 宜昌网站设计公司做 58 那样的网站
  • 茶叶网站建设目的网站建设与管理实践
  • 网站页面布局设计郑州高端网站制作
  • 遵义网站建设推广绿色商城网站模板
  • dedecms做微网站seo整站如何优化
  • 嘉兴网站广优化公司网站内容建设的原则是什么意思
  • 打开一个网站有哪些做汽配的网站
  • 南昌网站建设q479185700惠怎么给自己做一个网页
  • 西安微网站制作淘宝买网站开发不行吗
  • 网站开发的相关语言有哪些wordpress主题 胖子马
  • 网页设计与网站开发教程在线做效果图有哪些网站
  • 四川省住房与建设厅网站做网站的空间
  • 广南网站制作做外贸哪个网站比较好2017
  • 我们公司在做网站推广建设银行网上银行网站进入不了
  • 东明菏泽网站建设ppt怎么制作教程
  • 那些视频网站能用来直接做hrefwordpress汉化安装
  • 网站只做程序员青岛建站培训
  • 北京网站建设学习骏域网站