So schreiben Sie den folgenden Schleifensatz ordnungsgemäß in Node.Js, ohne die Ereignisschleife zu blockieren oder ohne einen Speicherfehler zu verursachen.Schreiben geschachtelter nicht blockierender Schleifen in node.js
Was ich bisher versucht umfasst
- Kombinationen von setImmediate()/setInterval()
- Das Async Modul see my code here
- Thread_a_gogo (dieses Modul wird nicht mehr gepflegt)
Der Code.
for(var i = 0; i < 2000; i++)
for(var j = 0; i < 2000; j++)
for(var k = 0; k < 2000; k++)
console.log(i + ":" + j + ":" + k);
erstellt auch eine JSFiddle um here
Ich glaube nicht, dass die Ereignisschleife ist, was Sie für Berechnungen verwenden möchten. Sein Zweck ist die Verarbeitung von Async-IO. Ein neuer Prozess, der für Schleifen funktioniert, wäre besser. – tcooc
Sie meinen, zum Beispiel child_process zu verwenden? –
Ihr 'async.js'-Code sollte funktionieren, Sie müssen nur das asynchrone' setImmediate (cb) '(etc) verwenden, anstatt sofort' cb() 'aufzurufen. – Bergi