【发布时间】:2019-03-19 13:51:32
【问题描述】:
我有一个包含以下内容的 javascript 文件。
"use strict";
$(function () {
var divs = $(".sc-frames");
var next = 0;
var currentIndex = 0;
var request = function (action, controller, div) {
var url = "../" + controller + "/" + action;
$.ajax({
type: "GET",
url: url,
dataType: "html",
async: false,
timeout:10000,
success: function (result) {
writeResponse(result, div);
},
error: function () {
$("#errorMessage").show();
}
});
};
var writeResponse = function (result, div) {
$(div).hide().html(result).slideDown("slow");
currentIndex = divs.index($(div));
if (parseInt(divs.length - 1) == parseInt(currentIndex)) {
next = 0;
} else {
next++;
}
};
var createRequest = function () {
$("#errorMessage").hide();
$(divs[currentIndex]).empty();
var div = divs[next];
var action = $(div).attr("data-action");
var controller = $(div).attr("data-controller");
request(action, controller, div);
};
setInterval(createRequest, 30000);
createRequest();
});
这只是对 3 个控制器操作方法进行 ajax 调用,并将视图按顺序连续发布到 div。
但是当我在谷歌浏览器开发工具中检查性能监视器时,它显示了一个 js 内存泄漏。 Js堆大小在慢慢增加。
有没有办法找出内存泄漏的确切位置?
提前致谢。
【问题讨论】:
标签: javascript asp.net-mvc memory-leaks