Ich verwende den folgenden Code, um eine sehr große Datei (ca. 16 GB) in Lua zu laden und Probleme mit dem Arbeitsspeicher zu bekommen. Ich frage mich, ob der folgende Code, lädt die ganze Datei im Speicher und dann Zeile für Zeile oder nur eine Zeile wird nacheinander geladen?Lädt Lua beim zeilenweisen Lesen die gesamte Datei in den Speicher?
for line in f:lines() do ... end
Gibt es bessere Möglichkeiten, große Dateien in Lua zu laden?
Was Sie haben, sieht gut aus. Vielleicht, wenn Sie uns den vollständigen Code zeigen, können wir Ihnen helfen, denn der Fehler ist nicht in dem, was Sie gezeigt haben. Sie haben uns auch nicht die vollständige Fehlermeldung angezeigt. –
Nein. In diesem Fall speichert Lua keine ganze Datei. Aber möglicherweise ist Ihr Ruhecode verhindern, dass gc Speicher freigibt. – moteus
Iterator 'file: lines()' lädt nicht die gesamte Datei gleichzeitig. –