this
.
_interval
);
//останавливаем обновления
this
.
_startBatchedWaitingTime
();
/* запускаем "внешний" таймер с интервалом
форсированного обновления */
}
/**
*
@private
*
@method
_applyAccumulatedUpdatesIfNeeded
* Метод для применения данных, накопившихся во время интервала обновления.
* Если ни одно сообщение с данными не пришло с сервера, применять данные не нужно.
* */
_applyAccumulatedUpdatesIfNeeded
= () => {
if
(
this
.
_accumulatedUpdates
.
events
.size >
0
) {
clearTimeout
(
this
.
_maxInterval
);
/* останавливаем "внешний" таймер с интервалом
форсированного обновления */
clearInterval
(
this
.
_interval
);
//останавливаем "внутренний" таймер
this
.
_startBatchedWaitingTime
();
//запускаем "внешний" таймер с форсированным
обновлением
this
.
applyAccumulatedUpdates
();
//применяем накопленные обновления данных к хранилищу
}
};
_startBatchedWaitingTime
= () => {
this
.
_forceApply
=
false
;
//выставляем флаг форсированного обновления в false
/* Через время, равное 1 с выставляет флаг форсированного обновления в true */
Do'stlaringiz bilan baham: |