我正在开发一个实时媒体浏览/回放应用程序,它使用<video>
浏览器中的对象进行回放(如果可用).
我正在使用直接javascript和jQuery的混合,
我关心的是记忆.应用程序永远不会在窗口中重新加载,并且用户可以观看许多视频,因此随着时间的推移,内存管理成为一个大问题.在今天的测试中,我看到内存配置文件按照每个后续加载流式传输的视频大小跳跃,并且永远不会回落到基线.
我尝试了以下相同的结果:
1 - 清空包含已创建元素的父容器,例如:
$(container_selector).empty();
Run Code Online (Sandbox Code Playgroud)
2 - 暂停并删除匹配"视频"的子项,然后清空父容器:
$(container_selector).children().filter("video").each(function(){
this.pause();
$(this).remove();
});
$(container_selector).empty();
Run Code Online (Sandbox Code Playgroud)
有没有其他人遇到这个问题,有没有更好的方法来做到这一点?