Найти в Дзене
Android Dolgo.polo Dev

Фильтры Throttling VS Debounce

Еще посты об IT в ИТ БД → https://t.me/it_bd Оба этих фильтра используются для того, чтобы не дублировать события Например, пользователь злостно и быстро кликает на кнопку "Обновить" десять раз подряд Но нам достаточно сделать один запрос к беку вместо десяти, чтобы получить актуальное значение В этом случае нужно отфильтровать лишние события, то есть пропустить лишние клики, обработав лишь 1 событие И тут есть два подхода: • Throttling — пропускает первое событие и игнорирует остальные N миллисекунд Например, если установить Throttling = 500мс, то обработается первый клик, а все следующие 500мс клики будут игнорироваться • Debounce — отсчитывает N миллисекунд после последнего события и только после этого пропускает последнее событие Например, если установить Debounce = 500мс, то клики будут игнорироваться, пока пользователь не сделает перерыв в 500мс. После 500мс простоя последнее событие обработается Еще посты - https://t.me/it_bd

Еще посты об IT в ИТ БД → https://t.me/it_bd

Оба этих фильтра используются для того, чтобы не дублировать события

Например, пользователь злостно и быстро кликает на кнопку "Обновить" десять раз подряд

Но нам достаточно сделать один запрос к беку вместо десяти, чтобы получить актуальное значение

В этом случае нужно отфильтровать лишние события, то есть пропустить лишние клики, обработав лишь 1 событие

И тут есть два подхода:

• Throttling — пропускает первое событие и игнорирует остальные N миллисекунд

Например, если установить Throttling = 500мс, то обработается первый клик, а все следующие 500мс клики будут игнорироваться

• Debounce — отсчитывает N миллисекунд после последнего события и только после этого пропускает последнее событие

Например, если установить Debounce = 500мс, то клики будут игнорироваться, пока пользователь не сделает перерыв в 500мс. После 500мс простоя последнее событие обработается

Еще посты - https://t.me/it_bd