国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

eclipse死循環(huán)占用的內(nèi)存怎么清理 java程序消耗內(nèi)存太大怎么辦?應該如何解決?

java程序消耗內(nèi)存太大怎么辦?應該如何解決?只是java程序的內(nèi)存消耗太大,這不是問題。表現(xiàn)形式是什么(OOM還是GC),是哪個對象(或者數(shù)據(jù))負責的?原因是什么(代碼級)?為什么這會產(chǎn)生問題(設計

java程序消耗內(nèi)存太大怎么辦?應該如何解決?

只是java程序的內(nèi)存消耗太大,這不是問題。表現(xiàn)形式是什么(OOM還是GC),是哪個對象(或者數(shù)據(jù))負責的?原因是什么(代碼級)?為什么這會產(chǎn)生問題(設計不良或使用不當)?

既然說到如何優(yōu)化,從個人經(jīng)驗來說,可以分為幾個步驟:

找問題:先找出需要優(yōu)化的地方,比如通過gclog GC,發(fā)現(xiàn)FGC頻率過高,比如OOM。定位問題:其實就是分析問題的過程。利用JVM工具(如jmap jstat)或linux中的各種trace工具收集相關數(shù)據(jù)(線索),然后用代碼分析問題,必要時可以重現(xiàn),保證定位問題的準確性??词裁礃拥奈矬w占用空間太大,與測試數(shù)據(jù)的規(guī)模不對應。查看是否存在內(nèi)存泄漏。解決問題:你說的第二點其實需要在這一步做,而且必須是針對定位的問題有針對性的解決方案。優(yōu)化算法。降低算法的空間復雜度。如果某些算法的空間復雜度可以從O(N*N)優(yōu)化到O(N)甚至O(logN),那么內(nèi)存使用量就會降低。檢查是否有不必要的對象,減少這樣的對象。為了提高這種能力,沒有捷徑可走,只有通過調(diào)查大量的案例來增加知識(原理),提高經(jīng)驗值。不建議 "優(yōu)化代碼并減少內(nèi)存的使用。有一種說法是 "過早的優(yōu)化是所有罪惡的根源。