Я разрабатываю веб-приложение.NET, в котором мне нужно выполнять запросы ajax с помощью функции javascript setInterval (), чтобы обновить информацию о некоторых страницах.
С каждым запросом ajax я получаю ответ xml размером около 68 КБ, который мне удается делать визуальными изменениями в html через jQuery. Я установил интервал в 2000 миллисекунд, но я хотел бы, или, скорее, мне нужно было бы уменьшить его до 1000 мс.
К сожалению, с каждым запросом потребление памяти ЦП увеличивается, что провоцирует блокировку браузера, и пользователь не может им пользоваться, пока не перезагрузит страницу. Я тестировал это в Firefox, Internet Explorer и Chrome, но результат всегда один и тот же. Если я не сделаю setInvertal (), проблема исчезнет.
Кроме того, я проверял область действия всех моих переменных javascript, но не нашел ничего плохого, и я полагаю, что у Javascript есть эффективный сборщик мусора для их очистки.
Я надеюсь, что я ясно объяснил проблему. У кого-нибудь есть идеи, как это решить?
Изменено:Я использую фреймворк jQuery. Мой код:
var tim;
$(document).ready(function () {
tim = window.setInterval("refresh()", 2000);
});
function refresh() {
$.post("procedures.aspx", $("#formID").serializeArray(), function (data) {
if (data != ""){
var xml = $.parseXML(data);
... (read and process xml to do changes in the html)
}
}
}