У меня есть следующая ситуация на стороне C. У меня есть функция, которая создает и возвращает массив целых чисел, представляющих значения RGB для изображения,
int* pxs(Image* m){
int* colors = malloc(height * width * sizeof(int));
//fill the array
return colors;
}
На стороне Java я получаю его, используя
//invoke
Pointer ptr = ref.getPointer();
int pxs[] = pointer.getIntArray(0, width*height);
//to an image
Image img = Toolkit.getDefaultToolkit().createImage(new MemoryImageSource(width, height, pxs, 0 ,width));
Затем изображение рисуется на панели, из-за того, что я сделал все, что занимает около 50-60 мсек, изображения с камеры, поэтому я получаю новый и рисую в цикле, но через некоторое время10 секунд или около того) моя машина останавливается.Я думаю, это связано со сборкой мусора?так мне было интересно, есть ли способ это исправить?