我在node.js + opencv上遇到内存泄漏问题(每个代码周期大约3-4MB)。我认为readImage()方法会导致内存问题。
如何释放未使用的内存?我尝试过release()函数,但它会导致分段错误。
有没有人遇到过这个问题?
download = wget.download(src, path + filename, options);
download.on('end', function(output) {
cv.readImage(path + filename, function(err, im) {
if (err) throw err;
if (im.width() < 1 || im.height() < 1) throw new Error('Image has no size');
im.detectObject('data/cascade.xml', {}, function(err, cars) {
if (err) throw err;
for (var i = 0; i < cars.length; i++) {
car = cars[i];
im.rectangle([car.x, car.y], [car.width, car.height], [0, 255, 0], 2);
}
im.save(path + '_' + filename);
});
});
heapdump.writeSnapshot('/var/log/node_' + Date.now() + '.heapsnapshot');
});