Re: [問題] JAVA String
※ 引述《garywine1201 (那是啥)》之銘言:
: 推 godfat:我倒覺得必然要觀察 jvm, 畢竟實際上的 mem 是算在他頭上 01/24 05
: 推 godfat:例如如果碰到 jvm memory leak, 我們 app 當然要避開 01/24 05
: 我當然同意這點
: 不過jvm的運作機制底下
: 並不允許程式以任何方式直接處理OS下的記憶體管理
: 而只能處理jvm下的記憶體管理
: 如此一來
: 若想要試著從程式解決jvm記憶體配置的問題
: 就好像你想試著從app解決OS記憶體分割的問題一樣
: 都會因為權限不足 以及 你並不了解這個黑盒子的運作方式而作罷
: 不過幸運的是 java virture machine的規格書是完全公開的
: 可以在這邊查閱
: http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html
: 我也希望能夠從這邊找出一些端倪
: 若是可以 我會再回答看看這個問題
我是覺得不見得需要這麼深入到 jvm 裡面,我想 jvm 有 memory leak 的狀況
應該不會很多,不過 ruby 的 memory leak 狀況我就看多了,通常會是某種
特定的程式寫法會造成 memory leak. 此時也根本不必去了解 ruby interpreter
或 ruby virtual machine, 只要成功找出是哪段程式造成這個問題,然後隨便
亂改寫另一種寫法,memory leak 很可能就會消失了...
當然會這麼說,是在不信任 java/ruby virtual machine 實作的假設下。
相信他絕對不會有問題的話,自然不必做到這一步。關於這點,我也相信
jvm 的問題絕對比 ruby 少很多很多 XDDD
另外其實我沒看你給的實驗連結,看到 sbrhsieh 大的回應才注意到該實驗
是呼叫 java 裡面的 method. 要觀察 jvm 的動態,我建議還是用外部的方式
較為可靠,畢竟做到這本來就是在懷疑 jvm 本身,不應用被懷疑者來做觀察。
(例如用 ps -o rss 來看)
再說實驗裡的 VisualCafe 2.5 on a Windows95 computer....
好像有點年紀了 XDDDD
updated:
對了,回到最初的問題,memory fragmentation 的狀況,有時候是很難解決的。
這倒不見得一定是 jvm 的錯,跟程式寫法也很有關係,總之要盡量避免一次
大量地取用大量的記憶體,這樣狀況會比較好一點。跑好幾個月發現記憶體
慢慢地在成長,我想雖然不是很理想,但應該還可接受,一年重開一次應該也還好。
--
「行け!Loki!」(rocky ロッキー)
-Gurumin ぐるみん 王子? XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.28.18
※ 編輯: godfat 來自: 220.135.28.18 (01/24 17:55)
推
01/24 19:32, , 1F
01/24 19:32, 1F
推
01/24 19:35, , 2F
01/24 19:35, 2F
→
01/24 19:37, , 3F
01/24 19:37, 3F
討論串 (同標題文章)
完整討論串 (本文為第 6 之 9 篇):
問題
2
2