javascript - setInterval 处理程序是否被视为内存泄漏?

标签 javascript node.js memory-leaks

JavaScript 代码:

function blah()
{
    var blahInterval = setInterval(function(){ 
        if( some_global_variable == 5 )
            clearInterval(blahInterval);
    }, 1000);
}

我的这段代码有多个变体,它将在 NodeJS 脚本中被调用无数次。我应该在 clearInterval 之后 delete blahInterval; 吗?

这是内存泄漏吗?或者 GC 会在 setInerval 函数超出范围后清理它?

最佳答案

当它超出范围时,GC 应该清理它。只要if条件为false就可以清除区间。我不会认为这是内存泄漏。

关于javascript - setInterval 处理程序是否被视为内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21317218/

相关文章:

AngularJS - $destroy 是否删除事件监听器?

javascript - 正则表达式中的多个匹配并存储或打印它

javascript - 使用 JavaScript POST JSON 数据

javascript - 如何将 Node.js 流的内容读入字符串变量?

java - 总(Tomcat)内存增加但堆没有

javascript - JavaScript 闭包内存效率高吗?

php - 单击提交按钮时,保留并传递在 javascript 中创建的动态生成的 html 表到 php

javascript - JS是否将参数列表视为可以关闭的范围?

node.js - 当我尝试将对象推送到 MongoDB 和 Nodejs 中的数组时,为什么会出现castError?

node.js - Heroku -dyno停止运行/ sleep ,哪里添加 'var port = process.env.PORT || 3000'