在jws文件中写一个简单的获取数据方法调用:
/**
* @common:operation
*/
public int[] Info_getIntArray() throws Exception {
int[] a = null;
try{
a = new int[100000];
return a;
}
finally{
a = null;
System.gc();
System.runFinalization();
}
}
当在客户端或者中间层调用此方法获取数据时:
内存暴涨,如果刷新过快,甚至weblogic服务停止,
不会因为代码内存溢出,
方法很简单
后来:通过Jprofiler工具测试java堆内存分配情况
发现:char[] 数据130多M
只要数据量增加,char[]数据也急速增加,达到顶,就内存溢出
这个问题困惑了一个多月,查了1万多论坛,还是解决不了
问bea公司,他们要登记,由于是搞开发,没有
大家能提提建议,或者解决办法吗,
万分感谢了!!!
------解决方案--------------------
顶
------解决方案--------------------
char[] 数据 没看到数组在哪分配的啊.
------解决方案--------------------
我帮你顶吧
------解决方案--------------------
jf up 学习
------解决方案--------------------
up
------解决方案--------------------
用profile工具测试一下
------解决方案--------------------
WorkflowTracking
------解决方案--------------------
你去掉finally中的a = null;试试.
------解决方案--------------------
mark 学习