Junior — Middle
Чӣ гуна ташкил медиҳед иҷрои чанд вазифаи ҳамоҳангии баробар муҳим?
sobes.tech AI
Ҷавоб аз AI
Барои ташкил додани иҷрои чандин вазифаҳои ҳамоҳанг дар Node.js, одатан истифода мешавад иҷрои параллел ё рақобатӣ бо истифода аз функсияҳои асинхронӣ ва promises. Масалан, шумо метавонед Promise.all-ро барои оғоз кардани чанд амали асинхронӣ ҳамзамон ва интизор шудан барои анҷоми онҳо истифода баред.
Масалан:
const task1 = () => new Promise(resolve => setTimeout(() => resolve('Вазифа 1 анҷом ёфт'), 1000));
const task2 = () => new Promise(resolve => setTimeout(() => resolve('Вазифа 2 анҷом ёфт'), 500));
Promise.all([task1(), task2()])
.then(results => {
console.log(results); // ['Вазифа 1 анҷом ёфт', 'Вазифа 2 анҷом ёфт']
});
Агар бисёр вазифаҳо бошанд ва бояд назорат кард, ки чандтои онҳо ҳамзамон иҷро мешаванд, метавон китобхонаҳо мисли p-limit истифода бурд ё навбатро дар назар гирифт. Ин имкон медиҳад, ки захираҳо ба таври баробар тақсим шаванд ва аз бориш зиёд дурӣ ёбанд.