用applet 压缩超过100M的文件,我在java panel(
http://www.duckware.com/pmvr/howtoincreaseappletmemory.html) 里设置 runtime parameters : -Xmx512m。
试过这种值,从64 到3G (3G是我的机器的最大Mem)
仍然有Java Heap space 问题,
1.这个Xmx到底要set 多大呢?
2.applet在客户端运行,server 的JVM version 和 heap size,对applet有影响么?谢谢!!

解决方案 »

  1.   

    1、保证你的代码没有内存泄露
    2、可以适当的增加jvm的 Xmx
      

  2.   

    1.在Eclipse中,用appletviewer运行该Applet看到底需要多大内存。
    2.Server端对客户端当然没影响。Applet在浏览器侧机器中运行的。
      

  3.   

    1.现在的是在jsp 中调用applet, js 传文件给applet,applet 拿到文件做zip. appletviewer 怎么看内存??应该不是appletviewer *.html 这么简单吧
    可以说详细点吗? 多谢@!
      

  4.   


    1. 如可检验代码没有泄露?第一,除了zip 这块代码,别的(包括)都是在production运行的多年的系统,应该没有问题; 第二,zip的程序单独在eclipse 里,做过测试,可以处理600M以上的文件,现在的问题是为什么到applet 里,就行不通?难道applet 使用JVM的方式不同??2.已经适当的增加Xmx, 从64M 到3G ,都试过。疑问是这个值应该不是越大越好,关键是怎么平衡??谢谢!
      

  5.   

    可以在自己applet程序中用
    Runtime.getRuntime().totalMemory()和Runtime.getRuntime().freeMemory()来看内存大小。
    记得给权限哦。