/
review
/
bot
Обзор
Документация
Войти
/
review
/
bot
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
src/utils/withTimeOut/withTimeOut.ts
25 строк
579 B
Semyon Okulov
init
28 июл 2025, 09:49
28 июл 2025, 09:49
874de44
Код
Авторство
О чём код?
/** * Запускает асинхронную функцию fn сразу и затем через каждые `interval` миллисекунд. * Возвращает функцию `stop`, чтобы прекратить дальнейшие запуски. */ export const withTimeOut = ( fn: () => Promise<void>, interval: number ): (() => void) => { let stopped = false const tick = (): void => { if (stopped) { return } fn().finally(() => { setTimeout(tick, interval) }) } tick() return () => { stopped = true } }