看板 java 關於我們 聯絡資訊
read load,如果不使用緩衝區,除了因為直接硬碟讀寫,可能比較慢之外 還會有什麼缺點嗎? 還有就是,最近在算數據時,都會先把數據大量讀入程式,理論上就是先放入了RAM 這樣在運算數據時會比較快,每筆數據我用一個物件儲存,物件中約有10來個變數, 總共會有30萬~75萬個物件。 可是RAM好容易就爆掉,不知道是真的數據太大,還是我程式的缺陷,還是java的缺陷。 大家有任何的建議嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.118.173.46 ※ 文章網址: http://www.ptt.cc/bbs/java/M.1409384934.A.8DB.html ※ 編輯: baconcsie (122.118.173.46), 08/30/2014 15:49:34
RealJack: 在compile的時後可以加一些flag去指定用到的記憶體大小 08/30 17:38
RealJack: 你有加嗎? 08/30 17:39
這方面的技術跟指令,我從未用過耶,可以給我關鍵字google,或是說的詳細點嗎? ※ 編輯: baconcsie (122.118.173.46), 08/30/2014 17:59:29
LPH66: 樓上講的應該是執行的 -Xmx 這個 flag 吧... 08/30 19:18
LPH66: 跟編譯期沒有關係, 是在執行時指定的 08/30 19:18
LPH66: google 可以直接搜尋「java Xmx」 08/30 19:19
RealJack: 是的就是這個,謝謝樓上更正 08/30 22:08
Killercat: java似乎沒有直接支援unbuffered disk io... 08/31 00:02
Killercat: socket是有 所以真的想unbuffered只能這樣連起來 08/31 00:03
Killercat: 另外會爆除了Xmx以外 還有一個permgen也是個可能點 08/31 00:04
Killercat: 可以拿這關鍵字看怎麼改,通常好發於極大量class數量 08/31 00:04
Killercat: ...er.. java的write/read算可以支援unbuffered啦 08/31 00:05
Killercat: 只是通常都會自己拿個buffer去把他兜起來 08/31 00:06