Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Backbone.js模型存储对集合的引用-内存泄漏_Javascript_Backbone.js_Memory Leaks - Fatal编程技术网

Javascript Backbone.js模型存储对集合的引用-内存泄漏

Javascript Backbone.js模型存储对集合的引用-内存泄漏,javascript,backbone.js,memory-leaks,Javascript,Backbone.js,Memory Leaks,我正在尝试调试应用程序中的内存泄漏。我正在使用Chrome的“堆时间线”,并注意到在几秒钟的时间内,分配了5000多个对象,都是相同的集合实例。将树向下展开,每个模型都有对所述集合的引用。这可能是我的问题吗?为什么主干会这样做?这是一个需要注意的已知问题吗?(我知道这缺乏大量的上下文)我无法想象这是一个问题,因为参考文献很便宜。但是,我可以看到在客户端存储5000个任何实例如何成为一个性能问题。有什么方法可以在服务器端分页吗?@u.k这是我的问题,我什么都没有。数据来自WebSocket,我在我


我正在尝试调试应用程序中的内存泄漏。我正在使用Chrome的“堆时间线”,并注意到在几秒钟的时间内,分配了5000多个对象,都是相同的集合实例。将树向下展开,每个模型都有对所述集合的引用。这可能是我的问题吗?为什么主干会这样做?这是一个需要注意的已知问题吗?(我知道这缺乏大量的上下文)

我无法想象这是一个问题,因为参考文献很便宜。但是,我可以看到在客户端存储5000个任何实例如何成为一个性能问题。有什么方法可以在服务器端分页吗?@u.k这是我的问题,我什么都没有。数据来自WebSocket,我在我的模型中监听它(这是所述集合的一部分),然后通知React组件更新它的本地状态。我只显示了一小部分UI项,但它们每秒会更改多次。问题是在任何给定时间集合的大小。理论上,从集合中删除并且在代码中没有引用的模型将被垃圾收集。问题是它们在代码中是否有引用(也可能在框架级别上是隐式的-例如,如果有一个视图正在访问模型)@u.k我相信我可能已经解决了它。我在主干源代码中注释掉了一行:
//model.on('all',this.\onModelEvent,this)
在此方法中:
//用于创建模型与集合的关联的内部方法_addReference:function(model,options){
它显然是设计出来的,但它似乎在我的应用程序中造成了严重破坏。你能在报告中报告这一点以便维护人员能够解决它吗?