[Flutter] Flutter Throttling: 너무 바쁜 이벤트들에게 여유를 주는 법

📖 Throttling
- 특정 동작이 너무 자주 실행되는 것을 막기 위해 일정 주기마다 한 번만 실행되도록 제한하는 기법을 말한다.
💡 Throttling의 목적
- 사용자의 빠른 조작이나 시스템 이벤트로 인해 함수가 지나치게 자주 호출되는 것을 방지한다.
- 리소스 낭비를 줄이고 앱의 성능을 안정적으로 유지할 수 있다.
⏱️ 동작 방식
Leading Throttling은 시간 간격 내 처음 발생한 이벤트만 처리한다.
Trailing Throttling은 시간 간격이 끝난 후 마지막 이벤트만 처리한다.
👩💻 예시 상황
- 사용자가 버튼을 매우 빠르게 여러 번 클릭할 때 각 클릭마다
API 호출이나 상태 변경이 일어나면 서버 부하와 비정상적인 동작이 생길 수 있다.
- 이때
Throttling을 적용하면 1초 간격으로 한 번만 함수가 실행되도록 제어할 수 있다.
💬 예시 설명
- 버튼 클릭 이벤트에 1초의
Throttling을 설정하면 사용자가 1초 안에 여러 번 눌러도 첫 번째 클릭만 실행되고 이후 클릭은 1초 뒤에 다시 가능해진다.