Async IO

Callback функції#

callback.js
console.time('first timeout');
setTimeout(function () {
console.timeEnd('first timeout');
}, 10_000);
const clock = setInterval(() => {
let time = new Date().toLocaleTimeString();
console.log(time);
}, 1000);
console.log('Clock started ...');
console.time('clock');
function stopClock() {
clearInterval(clock);
console.log('Clock stopped');
console.timeEnd('clock');
}
setTimeout(stopClock, 20_000);
console.log('... stop clock registered');

Зчитування файлу#

print-file.js
const fs = require('fs');
const path = require('path');
let topicsPath = path.resolve(__dirname, './topics.txt');
console.time('file read');
fs.readFile(topicsPath, { encoding: 'utf8' }, (err, data) => {
console.timeEnd('file read');
if (err) {
console.error(err);
return;
}
console.log(data);
});

Материалы#

💻 Расширить планировщик поздравлений#