Ich hatte neulich ein Gespräch mit meinem Freund. Ich habe gesagt, dass man in reinem Lua kein präemptives Multitasking-System aufbauen kann. Er behauptet, dass Sie das können, aus folgendem Grund:Multithreading in Lua
Sowohl C als auch Lua haben keine eingebaute Threading-Bibliotheken [Anmerkung des OP: Nun, Lua technisch, aber AFAIK ist es nicht für unsere Zwecke nützlich]. Windows, das größtenteils in C (++) geschrieben ist, hat präemptives Multitasking, das sie von Grund auf neu erstellten. Daher sollten Sie in der Lage sein, das Gleiche in Lua zu tun. Das große Problem, das ich damit sehe, ist, dass das präemptive Multitasking (meines Wissens nach) hauptsächlich darin besteht, dass es regelmäßige Interrupts erzeugt, mit denen der Manager die Kontrolle erhält und festlegt, an welchem Code er als nächstes arbeiten soll. Ich glaube auch nicht, dass Lua irgendeine Einrichtung hat, die das kann.
Meine Frage ist: ist es möglich, eine Pure-Lua-Bibliothek zu schreiben, die Menschen vorbeugende Multitasking haben können?
FYI Dies ist keine Antwort auf Ihre Frage (reine Lua-Implementierung von Multithreading), aber für jemanden, der nur Lue-Code mehrere OS-Threads ausführen und sie präventiv planen möchte, gibt es viele Optionen: http: // kotisivu. dnainternet.net/askok/bin/lanes/comparison.html – pts