如何确保请求的图像分辨率不会抛出内存不足异常
How to make sure requested image resolution will not throw out of memory exception
有没有办法确保调用函数来获取图像不会太多而无法容纳可用内存?
int[] intBuf = util.getAbgrRect(page, x, y, w, h, wPix, hPix);
基本上任何一种猜测方法都是靠不住的。您可以确保系统上有足够的可用内存,并设置一些您声明不应超过的足够大的硬限制。
如果一切都失败了,你总是可以做一些不可思议的事情,写
int[] intBuf = null;
try {
intBuf = util.getAbgrRect(page, x, y, w, h, wPix, hPix);
} catch(OutOfMemoryError e) {
// abort processing
}
它不漂亮,但它会起作用。小心点。
有没有办法确保调用函数来获取图像不会太多而无法容纳可用内存?
int[] intBuf = util.getAbgrRect(page, x, y, w, h, wPix, hPix);
基本上任何一种猜测方法都是靠不住的。您可以确保系统上有足够的可用内存,并设置一些您声明不应超过的足够大的硬限制。
如果一切都失败了,你总是可以做一些不可思议的事情,写
int[] intBuf = null;
try {
intBuf = util.getAbgrRect(page, x, y, w, h, wPix, hPix);
} catch(OutOfMemoryError e) {
// abort processing
}
它不漂亮,但它会起作用。小心点。