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

专业做外贸英文公司网站类似于众人帮的做任务赚佣金网站

专业做外贸英文公司网站,类似于众人帮的做任务赚佣金网站,贵州政务网站建设规范,网站要害字1.为什么静态方法无法调用非静态方法? 回答:因为静态方法是随着类的加载而加载,而非静态方法则是随着类的实例化才会被加载,生存周期不一样,所以静态方法的生命周期更长 2.Java–内部类持有外部类导致内存泄露的原因和…

1.为什么静态方法无法调用非静态方法?

回答:因为静态方法是随着类的加载而加载,而非静态方法则是随着类的实例化才会被加载,生存周期不一样,所以静态方法的生命周期更长

2.Java–内部类持有外部类导致内存泄露的原因和解决方案

原因:非静态内部类持有外部类的时候,如果有的地方引用了内部类,会导致这个外部类也会被引用,即使后期外部类没有用,但是仍然无法进行回收。

解决方法、

  1. 不要让其他的地方持有这个非静态内部类的引用,直接在这个非静态内部类执行业务。
  2. 将非静态内部类改为静态内部类。
    1. 内部类改为静态的之后,它所引用的对象或属性也必须是静态的,所以静态内部类无法获得外部对象的引用,只能从 JVM 的 Method Area(方法区)获取到static类型的引用

为什么使用:

  1. 当内部类只在外部类中使用时,匿名内部类可以让外部不知道它的存在,从而减少了代码的维护工作。
  2. 当内部类持有外部类时,它就可以直接使用外部类中的变量了,这样可以很方便的完成调用,如下代码所示:
    package org.example.a;class Outer{private String outerName = "Tony";class Inner{private String name;public Inner() {this.name = outerName;}}Inner createInner() {return new Inner();}
    }public class Demo {public static void main(String[] args) {Outer.Inner inner = new Outer().createInner();System.out.println(inner);}
    }

3.ThreadLocal出现内存泄漏的原因及怎么解决

原因:

1.ThreadLocal变量没有被明确的移除。在使用ThreadLocal时,当线程结束,如果ThreadLocal变量没有被手动清除,就会导致这部分内存无法被回收,最终导致内存泄漏。

2.ThreadLocal变量一直存在于ThreadLocalMap中。每个线程都有一个ThreadLocalMap,这个Map可以存放多个ThreadLocal变量。当ThreadLocal变量没有被移除时,它所引用的对象也会一直存放在线程的ThreadLocalMap中,这会导致ThreadLocalMap变得很大,从而占用大量的内存空间,最终导致内存泄漏。

解决方法:

1.使用ThreadLocal.remove()方法

ThreadLocal<Object> threadLocal = new ThreadLocal<>();
try {Object value = new Object();threadLocal.set(value);// do something
} finally {threadLocal.remove();
}

2.使用不可变的资源 

ThreadLocal变量存储的对象最好是不可变的,因为不可变的对象不需要频繁更新,也不会因为被多个线程同时修改而出现线程安全问题。如果要修改一个ThreadLocal变量中的对象,最好使用一个新的对象替换原有的对象,从而避免引用泄漏的问题。

3.使用弱引用

ThreadLocal<Object> threadLocal = new ThreadLocal<Object>() {@Overrideprotected Object initialValue() {return new WeakReference<Object>(new Object());}
};

 4.JVM调优

原因:

Heap内存(老年代)持续上涨达到设置的最大内存值;

Full GC 次数频繁;

GC 停顿时间过长(超过1秒);

应用出现OutOfMemory等内存异常;

应用中有使用本地缓存且占用大量内存空间;

系统吞吐量与响应性能不高或不降。

调优:

java heap:参数-Xms(设置内存)和-Xmx(设置堆),建议扩大至3-4倍FullGC后的老年代空间占用。
永久代:-XX:PermSize和-XX:MaxPermSize,建议扩大至1.2-1.5倍FullGc后的永久代空间占用。
新生代:-Xmn,建议扩大至1-1.5倍FullGC之后的老年代空间占用。
老年代:2-3倍FullGC后的老年代空间占用。

新生代越大,minorGC越久,越小,minorGC越频繁

http://www.yayakq.cn/news/999739/

相关文章:

  • 网站上线2年才做301广东网站建设微信官网开发
  • 做公司月刊网站赤峰做网站的
  • 满分作文网站小程序问答库
  • 免费婚恋网站设计wordpress网站反应慢
  • 外贸公司英文网站怎么做行业网站营销特点
  • asp.net旅游网站开发文档天河岗顶棠下上社网站建设设计
  • 平台和网站有什么区别天河做网站哪家强
  • 重庆网站建设莉公共建设工程中心网站
  • 网络设计网站建设类网站模板安徽网页设计培训
  • 体育设施建设发布有没有网站wordpress品牌分类
  • 爱站网综合查询百度竞价品牌广告
  • 做网站需要域名跟服务器吗钛钢饰品网站建设
  • 优是是什么网站wordpress 下载失败
  • 国外网站dns在线解析旅游网站的设计思路
  • 韩国明星都在那个网站做直播怎么做百度里面自己的网站
  • 云开发网站google 浏览器
  • 您提供的产品已经提交过网站备案wordpress怎么添加标签页
  • 重庆网站建设费用网络服务器可提供的常见服务有什么、什么、什么和什么服务
  • 做外贸网站报价企业邮箱手机怎么登录
  • 上海建设厅焊工证查询网站徐州做网站哪家好
  • 网站开发培训费自己做网站用php最快么
  • asp.net网站和空网站有什么区别珠海市工程造价信息网
  • 做论坛网站凡客沙发是几线品牌
  • 网站后台发布图片upload failediis网站服务器 建立出现问题
  • thinkphp 网站源码营销点子
  • 一起做网商网站怎么样nginx wordpress多个站点
  • 网站设置右击不了如何查看源代码58同城旧房翻新
  • 网站开发公司会计企业内部网站模板
  • 网站建设要用H5吗wordpress表情不显示
  • 定制型网站制作装修设计公司图片