※ 引述《montreal (╮(╯3╰)╭)》之銘言:
: 請問一下
: 一個java的網路程式
: 如果要處理傳輸100M的檔案
: 是不是表示要給jvm (-Xmx) 至少100M的記憶體?
: 另外 如果給jvm的記憶體大小超過電腦的實體記憶體大小
: jvm與os之間會自行以虛擬記憶體等其他方式達成嗎?
: 謝謝
當然不是,若你的程式只固定處理 100M 檔案,那可以用 -Xmx
方式先配置 100MB 的 heap 來放此檔案,之後再從這 100 MB 慢慢傳給遠
端,不過應該不會有人用這種方法
一般來說在java,你怎麼讀寫檔案,就怎麼處理網路傳輸的檔案,讀多少寫
多少。
byte buf[] = new byte[4096];
int r = -1;
while((r = inputStream.read(buf)) != -1)
outPutstream.write(buf, 0, r);
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.104.202.173