<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> 
    

    主站蜘蛛池模板: 最近免费mv在线电影| 免费看又黄又无码的网站| 在线观看免费a∨网站| 亚洲无砖砖区免费| 久草视频在线免费| 日本亚洲精品色婷婷在线影院 | 久久亚洲国产成人精品无码区| 老司机免费午夜精品视频| 国产18禁黄网站免费观看| 国产成人亚洲精品无码AV大片| 俄罗斯极品美女毛片免费播放| 国产精品久久亚洲一区二区| 亚洲AV伊人久久青青草原| 一日本道a高清免费播放 | 国产成人精品免费午夜app | 亚洲精品无码久久| 日韩免费观看的一级毛片| 风间由美在线亚洲一区| a级亚洲片精品久久久久久久| a在线免费观看视频| 亚洲伊人tv综合网色| 成年女人毛片免费播放人| WWW亚洲色大成网络.COM| 亚洲欧洲自拍拍偷精品 美利坚| 中文字幕成人免费高清在线 | 狼色精品人妻在线视频免费| 美腿丝袜亚洲综合| 2021在线永久免费视频| 亚洲欧美日韩国产精品一区| 亚洲日韩中文在线精品第一| 久久精品中文字幕免费| 亚洲乱码一区二区三区国产精品| 免费观看四虎精品国产永久| 永久免费不卡在线观看黄网站| 亚洲乱人伦精品图片| 亚洲精品成人片在线观看| 午夜精品免费在线观看| 亚洲AV性色在线观看| 久久亚洲国产伦理| 国产精品嫩草影院免费| 鲁大师在线影院免费观看|