Как поставить задачу (макрос) в очередь задач JavaScript? - PullRequest
2 голосов
/ 03 мая 2020

Какой самый простой и прямой способ поставить задачу в событие браузера l oop, используя JavaScript?

Вещи, которые не делают t работа:

1 Ответ

2 голосов
/ 03 мая 2020

MessagePort.postMessage делает именно это.

onmessage = e => handleMessage;
postMessage("","*");

Вы даже можете использовать MessageChannel , если вы хотите менее навязчивое среднее:

const channel = new MessageChannel();
channel.port1.onmessage = handleMessage;
channel.port2.postMessage('');

В настоящее время это единственный API, который ставит в очередь задачу синхронно, все остальные подразумевают хотя бы некоторое параллельное выполнение.

Возможно, однажды у нас будет метод scheduler.postTask, который даже позволит нам указать какой-то приоритет для наших задач, но это только на будущее ...

...