Ember应用程序内存泄漏

时间:2015-06-04 04:54:07

标签: memory-management ember.js memory-leaks ember-data ember-cli

我正在调查Ember(使用Ember数据)应用程序中的内存泄漏问题。问题发生在我的测试中,我在每次测试完成后在Ember应用程序上调用reset()。事实证明,在创建新的容器之前,reset()不会删除对容器的所有引用,导致许多容器挂在内存中,泄漏很重要,因为容器保留了所有容器缓存中的控制器和路由。

然后我使用Chrome Dev Tool来分析内存,我得到的其中一条保留路径是: controller:product/create in 27138485 cache in Container @27017929 container in @26910113 13 in @26702605 code in function() @26588769 adapterFor in @26498509 prototype in function() @26491127 Store in Class @26491123 DS in Window / localhost:8889/tests @26461671

有没有人在Ember / Ember数据中遇到过这样的内存问题?

我也尝试了类似下面的内容:

function setup() {
    var app = Application.createWithMixins({
       rootElement: '#ember-testing'
    });
    app.setupForTesting();
    app.injectTestHelpers();
    return app;
}

在每次测试之前设置新的应用程序

function teardown() {
    Ember.run(this.App, 'destroy');
}

在每次测试后销毁应用程序。但是仍然有许多对前一次测试创建的容器的引用。

0 个答案:

没有答案