LINUX.ORG.RU

setInterval async

 , ,


0

2

Вот
https://stackoverflow.com/questions/52184291/async-await-with-setinterval

Ещё это
https://www.npmjs.com/package/set-interval-async

Нужно

setInterval(async function(){
   await blabla();
}, 1000)


И нужно чтобы не запускалось тупо каждую сек. пока blabla() не изрезолвиться. И чтобы при первом запуске blabla() сразу запускалось, а потом по таймеру. И чтобы если blabla выдаст исключение, то таймер останавливался (это как опция).

Ничего не нравится. А нужно что то типа, максимально простое


function timer(){
  //реализация
}

const timer1Cancel = timer(async function(){
   await blabla();
}, 1000)


setTimeout(()=>{
  timer1Cancel()
}, 60 * 1000)



Свой код наговнякал, но он мне не нравиться, ищу гениев которые в 1 строчку сделают

★★★★

Последнее исправление: gobot (всего исправлений: 3)
function timeout(delay) {
  return new Promise(resolve => setTimeout(resolve, delay));
}

async function loopBlabla() {
  while (true) {
    await blabla();
    await timeout(60_000);
  }
}

loopBlaBla();
vbr ★★★★★
()
Ответ на: комментарий от DarkAmateur

Зубрить не плохо, а понимание приходит только от практики. Считай это базой, у ОП нет этой базы, но он пытается её заполнить практикой. Как видишь результат пока на троечку.

itn ★★★
()