Zum Beispiel in PHP könnten wir in einer Schleife eine Sleep-Funktion für 5 Minuten setzen, wo die Ausführung als Schleife zurückhalten konnte, wo wir neue holt aus der Datenbank oder anderen Instanzen führen bekommen könnten, wie kann dies als die einzige Möglichkeit, in JavaScript geschehen ist Timeout setzen und die gleiche Funktion darin aufrufen, Danke.Was ist die beste Praxis für PHP-Schlaf-Funktion in Javascript?
Antwort
Wie bereits oben in den Kommentaren aus, JavaScript ist single-threaded und so ist dies nicht möglich, es sei denn, Sie den Code wickeln Sie in einem eigenen Funktion nach der Verzögerung ausgeführt werden sollen.
Sie jedoch eine Art von Fortschritt Speichersystem machen könnte, wodurch Sie verfolgen, was die Bühne Sie verschiedene Teile des Codes wollen auf den Pausenzyklus auszuführen basiert, zum Beispiel:
var stage = 0;
setInterval(function() {
executeStage(++stage); // Iterate stage
}, 300000); // 5 mins
var executeStage = function(stageToExecute) {
// Put any code you want to execute at EVERY stage here
console.log('this code will execute no matter what stage is set');
// Now execute code specific to just this stage
switch (stageToExecute) {
case 1:
// Put stage 1 code here
console.log('Stage 1 executes here');
break;
case 2:
// Put stage 2 code here
console.log('Stage 2 executes here');
break;
// And so on
}
}
oben Das ist nur ein Idee, es hängt wirklich von Ihrem Anwendungsfall ab, der in Ihrer Frage nicht sehr deutlich erklärt wurde. Sie sollten auch bedenken, dass die erste Stufe nicht ausgeführt werden, bis 5 Minuten mit setInterval
bestanden haben, wenn Sie also eine Stufe ausgeführt werden soll, dann 5 Minuten warten, müssen Sie einen Anruf an executeStage(++stage)
außerhalb des setInterval
Anruf hinzufügen .
- 1. Was ist die beste Praxis für HTML-Formular-Entwicklung?
- 2. was ist die beste Praxis RDDs in scala zu verschmelzen
- 3. Was ist die beste Praxis zum Schließen von Ressourcen?
- 4. Was ist eine gute Praxis für die Abhängigkeitsinjektion in Ruby?
- 5. Was ist Page.LoadComplete für (in der Praxis)
- 6. Was ist die beste Praxis für die Verwendung einzelner Taste mit mehreren Funktionen
- 7. Was ist die übliche Praxis für Enums in Python?
- 8. ist die beste Praxis, um Authentifizierung in PHP API
- 9. JavaScript keyCode ist veraltet. Was bedeutet das in der Praxis?
- 10. Was ist die beste Praxis für große dynamische Auswahl und wo Abfrage
- 11. Was ist die beste Praxis, die Zeit in R zu behandeln?
- 12. Ist es ratsam, HttpSession als ClientSession in Java zu konvertieren? Was ist die beste Praxis?
- 13. Was ist die beste Praxis für Groß- und Kleinschreibung bei der Ausgabe des Programmfortschritts an STDERR?
- 14. Was ist die beste Speichermethode für UITableView?
- 15. Was ist die beste Alternative für QueryString
- 16. Was ist die beste Textverarbeitungskomponente für .NET
- 17. Was ist die beste Bereitstellungsstrategie für ASP.NET?
- 18. Was ist die beste Programmiersprache für Selen?
- 19. Was ist die beste Docker-Tagging-Strategie?
- 20. Was ist die beste Vorgehensweise für die Zeitzonenbehandlung in MySQL?
- 21. Was ist die beste Praxis, wenn 2 SimaPro Datensätze in brightway2 importieren sie zusammen
- 22. Was ist die beste Vorgehensweise für "private" öffentliche URLs?
- 23. Catching Sql Exception in Entity Framework4 Was ist die beste Praxis?
- 24. Was ist die beste Praxis, um Helfer in Laravel zu verwenden
- 25. Was ist die beste Praxis von Global Dialog in meiner Anwendung
- 26. Was ist derzeit die beste HTML/CSS/Javascript-Konfiguration?
- 27. Die beste Praxis, wenn PHP Ausnahmebehandlung verwenden
- 28. Was ist die beste Umbenennungsmethode?
- 29. Was ist die beste 3D-Grafikbibliothek für Java Web Apps?
- 30. Was ist die beste Methode zum dynamischen Sandbox-Inline-JavaScript?
Die Frage ist, dies wird die Schleife als Schlaf nicht Pause() Funktion tut mir korrigieren, wenn ich falsch bin – jaylab
Sie nicht JS pausieren kann, weil sie Single-Threaded ist; Dies würde möglicherweise Ihre gesamte Seite einfrieren. Sie können einen Teil des Codes nur in eine Funktion auslagern und JS mitteilen: Rufen Sie diese Funktion in x ms auf, wie "ruf mich zurück": [setTimeout] (https://developer.mozilla.org/en/docs/Web/API/WindowTimers/setTimeout). Und Sie können JS sagen: Ich brauche diese Funktion alle 5 Minuten ausgeführt (es sei denn, ich Ihnen sagen, anders) das ist [setInterval] (https://developer.mozilla.org/en/docs/Web/API/WindowTimers/setInterval) – Thomas
Die eigentliche Frage sollte sein, warum Sie diese Funktionalität überhaupt brauchen? Anscheinend lösen Sie ein Problem und aus irgendeinem Grund scheint es, dass ein 'sleep()' Ihnen helfen würde (Anmerkung: Schlaf in PHP ist extrem schlecht, weil es CPU-Zyklen verschwendet, es ist ineffizient). – Mjh