如果我不断在画布上绘制对象,并将旧对象移出边界,那么旧对象是否还会消耗内存?
例如jsfiddle
var canvas = d3.select("body").append("canvas")
.attr("width", 200)
.attr("height", 200);
var ctx = canvas.node().getContext("2d");
ctx.fillStyle = "#f00";
(function tick() {
ctx.fillRect(10, 10, 10, 10);
ctx.translate(10, 10);
setTimeout(tick, 500);
})();
我不断地绘制rects,同时将旧的rects移出网站。
观察
@meagar建议,我尝试过Chrome分析器,看起来外观对象不占用内存。
答案 0 :(得分:2)
是和否。
是的,CPU将处理绘制矩形的javascript。
不,GPU不会尝试在画布上绘制完全的矩形。