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

门户网站建设方案是什么意思外贸云

门户网站建设方案是什么意思,外贸云,拼团手机网站开发,百度信息流推广技巧文章目录 1、Garbage Collection2、方法区的回收3、堆对象回收4、引用计数法5、可达性分析算法6、查看GC Root对象 1、Garbage Collection C/C#xff0c;无自动回收机制#xff0c;对象不用时需要手动释放#xff0c;否则积累导致内存泄漏#xff1a; Java、C#、Python、… 文章目录 1、Garbage Collection2、方法区的回收3、堆对象回收4、引用计数法5、可达性分析算法6、查看GC Root对象 1、Garbage Collection C/C无自动回收机制对象不用时需要手动释放否则积累导致内存泄漏 Java、C#、Python、Go等支持对不再使用的对象进行回收 Java引入GC机制主要负责对堆上的内存进行回收简化了对象的释放但同时也丧失了回收的及时性因为回收操作不再又开发者做了。 线程不共享的部分随着线程的创建而创建随着线程的死亡而销毁不会发生内存泄漏。且栈里的每个栈帧在方法执行完后直接弹栈并释放内存都不用等到线程死亡。 添加JVM参数 -verbose:gc可查看回收日志 2、方法区的回收 即回收不再使用的类对应类生命周期里的卸载阶段。类A被卸载需同时满足 类的所有实例对象全被回收堆中再无它的对象或子类的对象加载类A的类加载器被回收类A的java.lang.Class对象没有任何地方在引用 URLClassLoader loader new URLClassLoader(new URL[] {new URL(file:D:\\lib\\)}); Class? clazz loader.loadClass(com.plat.domain.A); Object a clazz.newInstance(); a null; clazz null; loader null;Demo代码如下循环体中创建的变量一轮结束后自动没用不用重复 o null public class Demo2 {public static void main(String[] args) {try {ArrayListClass? classes new ArrayList();ArrayListClassLoader loaders new ArrayList();ArrayListObject objs new ArrayList();while (true) {//URLClassLoader classLoader new URLClassLoader(new URL[]{new URL(file:D:\\tmp\\)});BreakClassLoader1 classLoader new BreakClassLoader1(); //自定义类加载器classLoader.setBasePath(D:\\springboot\\jvm\\target\\classes\\);Class? clazz classLoader.loadClass(com.plat.app.Demo1);Object o clazz.newInstance();//循环体中创建的变量一轮结束后自动没用不用重复 o null 、clazz null 、classLoader null/*打开这里的任意一句就有一个对应的对象被引用类卸载就会失败objs.add(o);loaders.add(classLoader);classes.add(clazz);*///手动触发一次垃圾回收但不是立即//是对JVM的请求具体是否回收JVM自行决断System.gc();}} catch (Exception e) {e.printStackTrace();}}}public class Demo1 {static{System.out.println(类A被加载);} }添加JVM参数 //运行过程中打印类的加载信息 -XX:TraceClassLoading //类被卸载的时候打印一句日志 -XX:TraceClassUnloading 运行 但其实类的卸载不常见因为自定义类的累加载器对象还在热部署中用的多 3、堆对象回收 Java对象能否被回收得看它是否还在被引用。 demo null后再无对Demo对象的引用可回收。 执行 a1 null b1 nullA、B对象被回收因为方法中无法再通过引用访问到这两个对象了。总之判断方式 引用计数法可达性分析 4、引用计数法 即为每个对象维护一个计数器对象被引用就1置为null了就-1JVM扫描堆内存发现数值为0则回收 A a1 new A(); B b1 new B(): a1.SetB(b1);则A的计数器为1B的计数器为2 优点 简单也是C的智能指针的实现基础 缺点 1-1的维护损耗性能循环引用时导致计数器至少为1对象无法被回收内存泄漏 5、可达性分析算法 普通对象A经一个引用链可以到达GC Root对象则A不可被回收 GC Root对象即垃圾回收的根对象GC Root对象一般不会被回收且JVM持有GC Root对象的List列表 GC Root对象包括 线程对象Thread引用线程栈帧中的方法参数、局部变量等 系统类加载器加载的java.lang.Class对象引用类中的静态变量 监视器对象引用synchronized锁的对象 native本地方法调用时使用的全局对象 6、查看GC Root对象 步骤 阿尔萨斯的heapdump指令保存堆内存快照到本地磁盘 heapdump d:/tmp/test.hprof使用MAT工具打开堆内存快照文件
http://www.w-s-a.com/news/808112/

相关文章:

  • 58同城建网站怎么做wordpress评论显示数字ip
  • 免费制作论坛网站模板免费下载北京网站制作长沙
  • 旅游网网站建设网站如何自己做seo
  • 如何验证网站所有权做二手家具回收哪个网站好
  • 做哪种网站赚钱项目开发流程
  • 网站建设和网站网络推广网站建设软件定制
  • 站长工具网址查询全球云邮登陆网站
  • 宁波 住房和建设局网站网上发帖推广
  • 平面设计在线网站工业设计公司有哪些
  • 福州网站设计外包公司网站做的比较好
  • 如何设计网站首页网站开发综合技能实训心得体会
  • 用织梦做的网站好用吗w网站链接如何做脚注
  • 东莞做网站公司在哪哪里有网站培训的
  • 做宣传 为什么要做网站那重庆网站建设公司在线联系
  • 网站设计制作售价多少钱制作图片的软件是
  • 网站验证码目录简单带数据库的网站模版
  • 制作网站用c#做前台网站建设专题的意义
  • 广西建设职业技术学院教育网站牡丹区建设局网站
  • 网站后台怎么用ftp打开上海外贸进出口有限公司
  • 淘宝建设网站的意义大学生做那个视频网站
  • 如何提高你的网站的粘性建设银行流水网站
  • 微信h5在哪个网站做泰州专业网站制作公司
  • 现在.net做网站的多吗建设工程造价网
  • pc访问手机网站跳转违法网站开发人员
  • 网站前端做报名框wordpress 启动慢
  • 沈阳做网站客户多吗前端可以做网站吗
  • 网站设计规划书新媒体营销策略分析
  • dw个人网站主页怎么做天津工程信息建设网
  • 顺义做网站的公司网站页面设计基础教程
  • 安阳哪个公司做网站好企业没有做网站有的坏处