zoukankan      html  css  js  c++  java
  • 关于spring @scope("prorotype") 和 @aspectj 一起用的问题

        前段时间听别人说prototype 模式的bean用@Aspectj做AOP会导致内存泄漏,

    于是自己研究了下总结出几点

    1.aspectj  如果是采用javac 编译  会动态产生代理类 代理类是真实类的子类 (如果是接口 采用jdk代理 如果是类 采用 cglib代理)

    2.aspectj  如果是采用自带的ajc编译  会直接把切入代码编译到.class 中 没有代理

    3.如果是prototype+aspectj+javac 模式  每次产生真实对象的时候 都会伴随代理对象的产生  (经测试,同一个代理类只会产生一个,不会类型膨胀

    4.每次Gc  未被引用的实例(bean和代理)都会及时释放

  • 相关阅读:
    RTP/RTSP编程
    makefile
    VS 2010内存泄漏检测
    Linux Shell中捕获CTRL+C
    const
    Hdu 5344
    Hdu5762
    CF1200C
    CF1200B
    CF1200A
  • 原文地址:https://www.cnblogs.com/dint/p/13896962.html
Copyright © 2011-2022 走看看