Как стать автором
Обновить

Комментарии 2

Код - картинками, да ещё и serif-шрифтом...

Мы разрабатываем клиенты при помощи веб-технологий, с использованием фреймворка Angular.

Не самый лучший выбор, если вам нужно отображение больших объёмов данных данных в реальном времени.

При непрерывной работе клиента утечки накапливаются и могут привести к потере производительности, зависанию интерфейса, а в худшем случае – к out of memory браузера.

Поэтому важно, чтобы используемый фреймворк поддерживал автоматический контроль времени жизни ресурсов. Опять же, Angular это не поддерживает.

пусть при фактическом поступлении данных каждые 200 мс настраивается период троттлинга в 1 секунду. В этом случае данные за 1 секунду будут накапливаться, а обрабатываться будет только последнее значение, прочие значения будут игнорироваться. Интерфейс также будет перерисовываться не чаще одного раза в секунду.

Не знаю, что вы там такого рисуете, но не вижу проблемы перерисовывать интерфейс по мере поступления данных, то есть каждые 200мс в данном случае.

Для «тонкой настройки» обработки данных мы рекомендуем библиотеку RxJS. Библиотека позволяет манипулировать данными в функциональном стиле, в том числе ограничивать обработку данных с помощью троттлинга. А с помощью функции distinctUntilChanged библиотеки можно определять, что новые данные не отличаются от предыдущих, и за счет этого оптимизировать частоту обновления интерфейса и исключать «паразитные» перерисовки, когда данные не изменились.

Лучше всё же использовать системы реактивности, которые занимаются этим самостоятельно, а не требуют постоянной "тонкой настройки".

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.