<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    瘋狂

    STANDING ON THE SHOULDERS OF GIANTS
    posts - 481, comments - 486, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    Introspector 緩存清除監聽器

    Posted on 2011-07-19 17:08 瘋狂 閱讀(1014) 評論(0)  編輯  收藏 所屬分類: spring

    Spring 提供了一個名為 org.springframework.web.util.IntrospectorCleanupListener 的監聽器。它主要負責處理由 JavaBean Introspector 功能而引起的緩存泄露。IntrospectorCleanupListener 監聽器在 Web 應用關閉的時會負責清除 JavaBean Introspector 的緩存,在 web.xml 中注冊這個監聽器可以保證在 Web 應用關閉的時候釋放與其相關的 ClassLoader 的緩存和類引用。如果您使用了 JavaBean Introspector 分析應用中的類,Introspector 緩存會保留這些類的引用,結果在應用關閉的時候,這些類以及 Web 應用相關的 ClassLoader 不能被垃圾回收。不幸的是,清除 Introspector 的唯一方式是刷新整個緩存,這是因為沒法準確判斷哪些是屬于本 Web 應用的引用對象,哪些是屬于其它 Web 應用的引用對象。所以刪除被緩存的 Introspection 會導致將整個 JVM 所有應用的 Introspection 都刪掉。需要注意的是,Spring 托管的 Bean 不需要使用這個監聽器,因為 Spring 的 Introspection 所使用的緩存在分析完一個類之后會馬上從 javaBean Introspector 緩存中清除掉,并將緩存保存在應用程序特定的 ClassLoader 中,所以它們一般不會導致內存資源泄露。但是一些類庫和框架往往會產生這個問題。例如 Struts 和 Quartz 的 Introspector 的內存泄漏會導致整個的 Web 應用的 ClassLoader 不能進行垃圾回收。在 Web 應用關閉之后,您還會看到此應用的所有靜態類引用,這個錯誤當然不是由這個類自身引起的。解決這個問題的方法很簡單,您僅需在 web.xml 中配置 IntrospectorCleanupListener 監聽器就可以了:

     <listener> 
        <listener-class> 
        org.springframework.web.util.IntrospectorCleanupListener 
        </listener-class> 
     </listener> 
    

    主站蜘蛛池模板: 色视频在线观看免费| 亚洲啪啪综合AV一区| 国产成人精品日本亚洲11| 无码专区AAAAAA免费视频| 久久久久亚洲精品男人的天堂| 免费人成再在线观看网站| 国产一级一片免费播放| 美女一级毛片免费观看| 亚洲v国产v天堂a无码久久| 四虎国产精品永免费| 国产亚洲精品资在线| 国产综合免费精品久久久| 久久精品国产亚洲AV网站 | 免费人成视频在线| 成人区精品一区二区不卡亚洲| 99久久精品日本一区二区免费| 2020年亚洲天天爽天天噜| 夫妻免费无码V看片| 美女视频黄a视频全免费网站一区 美女视频黄a视频全免费网站色 | 成人午夜性A级毛片免费| 日本亚洲欧美色视频在线播放| 无码欧精品亚洲日韩一区夜夜嗨| 二级毛片免费观看全程| 亚洲一区二区三区在线观看精品中文| a级毛片免费在线观看| 亚洲美女大bbbbbbbbb| 成年人网站在线免费观看| 边摸边吃奶边做爽免费视频网站 | 亚洲免费视频网站| 国产成人精品免费视频网页大全| 亚洲av乱码一区二区三区| 日韩午夜免费视频| 免费无码作爱视频| 亚洲六月丁香六月婷婷蜜芽| 日韩视频免费一区二区三区| 国产黄片不卡免费| 亚洲a级片在线观看| 亚洲第一成人影院| 1000部拍拍拍18勿入免费凤凰福利| 亚洲午夜无码久久久久小说 | 免费无码又爽又高潮视频|