J'ai rencontré un problème étrange - l'application ralentit rapidement à mesure qu'elle fonctionne. La seule chose qui vient à l'esprit est une fuite de mémoire, mais comment le détecter en javascript? Y a-t-il des outils? Quoi qu'il en soit, voici le code:Application de canevas HTML5 (javascript) - comment détecter une fuite de mémoire?
function draw_ship(){
//Body
var sbpaint = ctx.createLinearGradient(shipx+20,shipy,shipx+20,shipy+15);//painting the ship
sbpaint.addColorStop(0,'rgb(220,220,230)');
sbpaint.addColorStop(1,'rgb(150,150,160)');
ctx.fillStyle = sbpaint;
ctx.moveTo(shipx,shipy);
ctx.lineTo(shipx+40,shipy);
ctx.lineTo(shipx+55,shipy+15);
ctx.lineTo(shipx-15,shipy+15);
ctx.fill();
//Head
var shpaint = ctx.createLinearGradient(shipx+20,shipy,shipx+20,shipy-20);
shpaint.addColorStop(0,'rgb(200,200,210)');
shpaint.addColorStop(1,'rgb(100,100,110)');
ctx.fillStyle = shpaint;
ctx.arc(shipx+20,shipy,20,Math.PI,Math.PI*2,false);
ctx.fill();
}
Comme vous le voyez, il est très simple, et je suis vraiment perplexe, où la fuite pourrait être. Application elle-même est ici: link, choisissez «Scroller» dans le menu.
Nous vous remercions de votre temps.
Les fuites de mémoire ne ralentissent généralement pas les applications. Vous devriez avoir une fuite * massiv * pour cela. Par exemple, si vous utilisez autant de mémoire qu'il doit être paginé. –
Ça me semble bien, quel navigateur? – MooGoo
Ça me va aussi –