public static ImageIcon scaleImage(byte[] bytes, int width, int height, int hints){
ImageIcon icon = null;
if (bytes != null && bytes.length > 0) {
try {
icon = new ImageIcon(bytes);
Image newImage = icon.getImage();
newImage = newImage.getScaledInstance(width, height, hints);
icon = new ImageIcon(newImage);
}
catch (Exception e) {
e.printStackTrace();
}
}
return icon;
}我们知道静态的引用是不被GC回收的。那么静态方法的局部变量那?还有JAVA SWING是不是很容易内存泄漏啊?为什么内存只增长从来不回收?只有最小化托盘的时候才释放内存。好晕听说可以利用反射技术释放对象引用图结构。我自己写了一个但不是是否好请假个位一下有没有类似的开源项目?以上这个函数是比较占用内存的目的是把一个图像放入MAIN_Panel上。和时候内存就增加很大图像可能只有120K内存增长2-30M很奇怪。
ImageIcon icon = null;
if (bytes != null && bytes.length > 0) {
try {
icon = new ImageIcon(bytes);
Image newImage = icon.getImage();
newImage = newImage.getScaledInstance(width, height, hints);
icon = new ImageIcon(newImage);
}
catch (Exception e) {
e.printStackTrace();
}
}
return icon;
}我们知道静态的引用是不被GC回收的。那么静态方法的局部变量那?还有JAVA SWING是不是很容易内存泄漏啊?为什么内存只增长从来不回收?只有最小化托盘的时候才释放内存。好晕听说可以利用反射技术释放对象引用图结构。我自己写了一个但不是是否好请假个位一下有没有类似的开源项目?以上这个函数是比较占用内存的目的是把一个图像放入MAIN_Panel上。和时候内存就增加很大图像可能只有120K内存增长2-30M很奇怪。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货