Sobes.tech
Junior — Middle

Come organizzi l'esecuzione di più compiti di pari importanza?

sobes.tech AI

Risposta dell'AI

Per organizzare l'esecuzione di più compiti di uguale importanza in Node.js, si utilizza generalmente l'esecuzione parallela o concorrente tramite funzioni asincrone e promesse. Ad esempio, si può usare Promise.all per avviare più operazioni asincrone contemporaneamente e attendere che siano completate.

Esempio:

const task1 = () => new Promise(resolve => setTimeout(() => resolve('Task 1 completato'), 1000));
const task2 = () => new Promise(resolve => setTimeout(() => resolve('Task 2 completato'), 500));

Promise.all([task1(), task2()])
  .then(results => {
    console.log(results); // ['Task 1 completato', 'Task 2 completato']
  });

Se ci sono molte attività e bisogna controllare quante vengono eseguite contemporaneamente, si possono usare librerie come p-limit o implementare una coda di attività. Questo permette di distribuire le risorse in modo uniforme ed evitare sovraccarichi.