Wie wird eine Funktion nach Ablauf einer Zeit aufgerufen, die in Javascript oder einer anderen interpretierten Sprache implementiert wurde?Wie wird setTimeout in den Javascript-Interpretern oder Timern allgemein implementiert?
Mit anderen Worten, gibt es eine Schleife im JavaScript-Interpreter, die die ganze Zeit eine Liste von Timern überprüft, oder gibt es eine bestimmte Art, dass die Betriebssysteme dies behandeln?
Dank
Dieser Blogpost ist gut für die Analyse der JavaScript-Ausführungswarteschlange, beantwortet aber nicht wirklich die Frage: Wie kommen die Dinge in die Warteschlange, wenn der Timer ausgelöst wird? Es scheint, als ob die Ausführungswarteschlange kein Scheduler ist, in dem Sie später auszuführende Sachen ablegen können, sie werden sofort ausgeführt, wenn Platz ist. Sie haben eine Idee, wie der eigentliche Timer funktioniert, der das Anhängen der Ausführungswarteschlange auslöst? Ich könnte mir vorstellen, dass es in Linux Envs so etwas wie das ev http://linux.die.net/man/3/ev sein könnte – user541905