亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

JVM Perm方法存儲(chǔ)區(qū),后面有一點(diǎn)跑題

系統(tǒng) 2564 0

?

      在一個(gè)jvm實(shí)例的內(nèi)部,類型信息被存儲(chǔ)在一個(gè)稱為方法區(qū)的內(nèi)存邏輯區(qū)中。類型信息是由類加載器在類加載時(shí)從類文件中提取出來(lái)的。類(靜態(tài))變量也存儲(chǔ)在方法區(qū)中
如果上面寫的是對(duì)的,那么在我們靜態(tài)變量用多了的情況下,就會(huì)出現(xiàn)java.lang.OutOfMemoryError: PermGen space

所以那個(gè)permSize一直不釋放是合理的,因?yàn)閟tatic變量JVM一般情況下是不會(huì)去回收。我剛才看了一下我們狀態(tài)的所有JAR包也只有一百二十幾M,但是為什么我們?cè)O(shè)年MaxPermSize為占用百分之九十幾?而且一直在往上增長(zhǎng),這就說(shuō)明初始化加載class的時(shí)候加載class字節(jié)碼,meta信息之外,Perm方法區(qū)會(huì)隨著程序的運(yùn)行而不斷增大,這時(shí)候,問(wèn)題就來(lái)了。所以static變量得慎用啊。。。。。

    
      
        
          除了上述的內(nèi)容會(huì)存儲(chǔ)在方法存儲(chǔ)區(qū)或永久存儲(chǔ)區(qū)之外(Pernanet Gerneration)
        
      
    
      
        
          ,還有:要加載類的信息(名稱,修飾符等),類中的靜態(tài)變量,類中定義為final
        
      
    
      
        
          類型的常量,類中的Field信息,類中的方法,當(dāng)開發(fā)人員在程序中通過(guò)Class對(duì)象
        
      
    
      
        
          的getName,isInterface等方法來(lái)獲取信息時(shí),這些數(shù)據(jù)都來(lái)源瑜方法區(qū),
        
      
    
      
        
          在一定的條件下也會(huì)被GC,當(dāng)方法區(qū)域要使用的內(nèi)存超過(guò)其允許的大小時(shí),
        
      
    
      
        
          會(huì)拋出OutOfMemory的錯(cuò)誤信息。
        
      
      ?
    
      ?
    
      static成員變量得慎用 有木有? 特別是那種會(huì)一直增加的static成員變量
    
      ?
    
      那有的東西必須保存在內(nèi)存中,那怎么辦?除了perm永久方法存儲(chǔ)區(qū)之外,不是不家堆棧嗎?
    
      ?
    
      那我們就可以把我們的程序設(shè)置單實(shí)例的,或者搞一個(gè)工廠方法去取這個(gè)類的實(shí)例就OK了。
    
      ?
    
      說(shuō)到單實(shí)例,必須說(shuō)明一點(diǎn),我們靠Spring去維護(hù)單實(shí)例不靠譜,Spring的單實(shí)例只限于單個(gè)IOC容器內(nèi),但是一個(gè)JVM中可以存在多個(gè)IOC容器,特別是多人開發(fā),然后又是基于JAR包的作合作時(shí),出出問(wèn)題還搞不清楚到底是哪里的問(wèn)題。所以。。。。利用Spring來(lái)保持程序的單實(shí)例可以,但最好這種單例只有某個(gè)模塊用,而不會(huì)涉及到別的部門會(huì)引用到的情況,比如那個(gè)狀態(tài)中的緩存隊(duì)列用Spring來(lái)維持它的單實(shí)例,從設(shè)計(jì)的角度看,這是不靠譜的,一個(gè)服務(wù)需要單實(shí)例,需要從設(shè)計(jì)的角度讓其去單實(shí)例,而不是基于使用者合理的使用Spring的基礎(chǔ)上去控制其單實(shí)例,如果有一個(gè)人new ApplicationContext(.. ) 創(chuàng)建了一個(gè)IOC怎么辦?那不就造成了上次狀態(tài)造成的OOM了嗎?
    
      ?
    
      保證唯一實(shí)例的方法多的去了,工廠行嗎?單實(shí)例行嗎?
    

大笑

      ?
    
      ?
    
      隨感一下。
    
      ?
    
      ?
    
      ?
    

JVM Perm方法存儲(chǔ)區(qū),后面有一點(diǎn)跑題


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 国产精品亚洲午夜不卡 | 国产网红主播 | 日本乱人伦片中文字幕三区 | 久久这里是精品 | 欧洲亚洲视频 | 99视频有精品 | 国产亚洲图片 | 国产在线91精品入口 | 国产在线小视频 | 久久香蕉影院 | 在线亚洲日产一区二区 | 久久免费在线观看 | 99国产大尺度福利视频 | 99re这里只有精品在线观看 | 国产欧美精品一区二区色综合 | 色综合天天综合网亚洲 | 91国内精品久久久久影院优播 | 欧美在线成人免费国产 | 日韩不卡毛片 | 久久精品一区二区免费看 | 亚洲精品一区二区三区福利 | 久久久久久久久一级毛片 | 久久91视频 | 四虎国产成人亚洲精品 | 亚洲狠狠婷婷综合久久久图片 | 国产精品高清免费网站 | 久久色网 | 日日夜夜天天干 | 亚洲免费观看 | 狠狠操狠狠干 | 国产不卡视频在线 | 青青免费视频视频在线 | 国产色网 | 国产精品热久久 | 狠狠久久亚洲欧美专区 | 日本免费爱爱视频 | 色综合日本 | 欧美一区二区在线观看免费网站 | 免费鲁丝片一级在线观看 | 久久嫩草影院免费看夜色 | 3d动漫精品成人一区二区三 |