UNPKG

@lifaon/rx-js-light

Version:

Blazing fast Observables

20 lines (19 loc) 475 B
import {clearImmediate} from "./set-immediate.mjs"; import {TASKS} from "./tasks.constant.mjs"; let taskRunning = false; export function runTask(handle) { if (taskRunning) { setTimeout(runTask, 0, handle); } else { if (TASKS.has(handle)) { const task = TASKS.get(handle); taskRunning = true; try { task.callback.apply(void 0, task.args); } finally { clearImmediate(handle); taskRunning = false; } } } }