refactor: move reader throttle control to one place