taskRunner.add(logAfterDelay("Delayed by 4"));
taskRunner.add(logAfterDelay("Delayed by 4"));
taskRunner.add(logAfterDelay("Delayed by 4"));
taskRunner.add(logAfterDelay("Delayed by 6"));
taskRunner.add(logAfterDelay("Delayed by 6"));
taskRunner.add(logAfterDelay("Delayed by 6"));
// --- Helpers ---
const startingTime = Date.now();
function logAfterDelay(logString) {
return () => {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log(logString, getDelay(startingTime));
resolve();
}, 2000);
});
};
}
function getDelay(startingTime) {
return [${Math.round((Date.now() - startingTime)/1000)}s delay];
}