0
嘗試了很多方法來強制GC清除內存而沒有成功。 最重要的是:是否有成功的方法銷燬Buffer實例並釋放NodeJS Canvas中使用的內存?
buf.remove(); // does not exist
delete buf; // does not deallocate the memory
buf = null; // removing references - no result
發生在這個常規問題:
function loadImage(url, finish){
var Image = Canvas.Image;
request.get({url:url, encoding:null}, responseImage);
function responseImage(err,res,body) {
if(err){
return finish();
}
var image = new Image();
image.onerror = function(e) {
finish();
};
image.onload = function(){
finish(image);
};
image.src = new Buffer(body, 'binary');
}
}
loadImage("http://...", function(image){
if(image){
canvasContext.drawImage(image,0,0,100,100);
}
});
你是什麼意思「沒有成功」?你能告訴更多關於你如何測試的內容嗎? – 2014-12-02 15:29:08
我有一個小功能,可以將來自URL的圖像加載到緩衝區中。在畫布上繪製圖像對象後,我嘗試銷燬圖像對象並釋放緩衝區內存。 – swogger 2014-12-02 15:33:20
你如何跟蹤內存堆? – Shmiddty 2014-12-02 15:40:05