使用函数时带有传单内存泄漏的nodejs
nodejs with leaflet memory leak when using a function
我在 browser/client 中插入一个函数后,我在 client.js 中发生内存泄漏:
socket.on("botnet", function(t) {
var e = JSON.parse(t);
...
$(e).on('click', function (e) {
console.log(id);
});
});
一旦我删除(任何)函数,就没有内存泄漏。我缺少什么?为什么首先会发生内存泄漏?
可能是因为您在每次触发僵尸网络事件时都创建了一个点击事件。我会改为使用带有 .on
函数的作用域,并将处理程序从其内部移除到外部作用域。
做:.on("click","div",function(){});
而不是:.on("click",function(){});
并在套接字事件之外将其删除,如下所示:
socket.on("botnet", function(t) {
var e = JSON.parse(t);
});
$(expectedClassOrID).on('click','div', function (e) {
console.log(id);
});
我在 browser/client 中插入一个函数后,我在 client.js 中发生内存泄漏:
socket.on("botnet", function(t) {
var e = JSON.parse(t);
...
$(e).on('click', function (e) {
console.log(id);
});
});
一旦我删除(任何)函数,就没有内存泄漏。我缺少什么?为什么首先会发生内存泄漏?
可能是因为您在每次触发僵尸网络事件时都创建了一个点击事件。我会改为使用带有 .on
函数的作用域,并将处理程序从其内部移除到外部作用域。
做:.on("click","div",function(){});
而不是:.on("click",function(){});
并在套接字事件之外将其删除,如下所示:
socket.on("botnet", function(t) {
var e = JSON.parse(t);
});
$(expectedClassOrID).on('click','div', function (e) {
console.log(id);
});