Показать сообщение отдельно
  #5 (permalink)  
Старый 14.09.2020, 20:59
Новичок на форуме
Отправить личное сообщение для jCtapuk Посмотреть профиль Найти все сообщения от jCtapuk
 
Регистрация: 13.09.2020
Сообщений: 2

Ну если не нравится класс то замена функция

function sleep(time = 1000) {
  return new Promise((resolve) => {
    setTimeout(resolve, time);
  });
}

function createThread(run: (isRunning: () => boolean, sleep?: (time: number) => Promise<unknown>) => Promise<unknown>) {
  let running = false

  const stop = () => {
    running = false
  }

  const start = () => {
    if (running) return;
    running = true
    run(() => running, sleep)
  }

  return { start, stop }
}
Ответить с цитированием