Estoy usando esta biblioteca ( https://github.com/spite/ccapture.js/ ) para generar gifs animados desde un lienzo. Estoy generando una cantidad significativa de archivos (cientos), que se generan como blobs y se descargan.
Me enfrento a un problema que, cuando hago un ciclo para generar estos gifs, una enorme cantidad de trabajadores se generan y no se eliminan, lo que termina bloqueando la página. Aquí está mi código:
for(i=0;i<100;i++){ let capturer = new CCapture({ framerate: 10, format: "gif", workersPath: "js/" }); capturer.start(); for (let currentFrame = 0; currentFrame < totalFrames; currentFrame++) { this.gifRender(currentFrame / totalFrames); capturer.capture(canvas); } capturer.stop(); capturer.save(); }Al ejecutar este código, puedo ver que se generan cientos de trabajadores y se acumulan en mi memoria, lo que hace que la página se bloquee.
Descubrí que esta biblioteca usa esto: https://github.com/jnordberg/gif.js para generar gifs. Me he sumergido en los archivos de ambas bibliotecas, pero no pude encontrar una manera de solucionar el problema.
No es posible reutilizar el mismo objeto, ya que no existe un método de 'reinicio' para borrarlo.
He estado depurando esto durante 10 horas. ¿Alguien puede ayudar?