2016-06-29 5 views
1

ich wurde für jede Lösung für mein Problem suchen:eine mathematische Operation durchführt für X Höhe der Zeit

ich ein Programm möge, mit Hilfe von JavaScript, die für X Höhe der Zeit eine mathematische Operation ausführt. Ist es möglich? Gibt es eine Möglichkeit, den aktuellen Ausführungsthread mit JavaScript oder anderen Bibliotheken zu unterbrechen?

Was ich will ist, eine mathematische Operation ausführen sich in eine Schleife und zum Beispiel in einer Minute beendet, auch wenn die Schleife nicht abgeschlossen ist.

(Die einzige Art, wie ich etwas Ähnliches denken während der Schleife zu fragen, ob die Zeit, als 1 Minute ist gering, aber ich will nicht busy waiting tun)

Die mathematische Operation ist:

var serie = 0;  
for (var j=1; j <= 5; j++){ 
    for (var k=1; k <= 100000; k++){ 
     serie = serie + (Math.log(k)/Math.LN2) + (3*k/2*j) + Math.sqrt(k) + Math.pow(k, j-1); 
    } 
} 
+2

[Web-Worker] (https://developer.mozilla.org/en-US/docs/Web/API/Worker), [Verwenden von Web Workers] (https://developer.mozilla.org/en-US/Docs/Web/API/Web_Workers_API/Using_web_workers) – Andreas

+0

@JuanFernandezSosa Ich bin mir fast sicher, dass es eine mathematische Formel gibt, die Sie hier anwenden können, damit Sie es nicht so brutal zwingen müssen. Schauen Sie in die Mathe-Seite der Dinge, Sie werden vielleicht etwas finden, das Ihnen erlaubt, dies ohne die massive Schleife zu vervollständigen. –

+0

Auf welchem ​​Computer laufen Sie auch? Das dauert 20ms, eine Minute ist für 500k-Operationen ziemlich extrem. –

Antwort

-2

Sie können die Methoden clearInterval() und setInterval() verwenden, um Ihre Funktionen zu synchronisieren.

+0

Ich habe schon danach gesucht, aber es hat nicht für mein Problem funktioniert. –

+0

Dies funktioniert nicht für CPU-gebundene Operationen. –

Verwandte Themen