Warum eine 200 MB Textdatei 4 GB RAM überlastet

1327
a sandwhich

Ich habe ein einfaches Programm in C ++ geschrieben, das einige Berechnungen durchführt, eine Zahl in eine Textdatei ausgibt und wiederholt. Mehrere Millionen Mal. Die endgültige Textdatei hatte ungefähr 215 Megabyte. Als ich sie jedoch öffnete, brauchte gedit über fünf Minuten, um alles zu öffnen, und ich ging über meine 4-GB-RAM und in den Linux-Swap. Warum passiert das, wenn die Originalgröße nur 200 MB beträgt?

3
"gedit" verbraucht viel Speicher, nicht Ihr eigenes Programm, oder? Dre vor 13 Jahren 3
Richtig. Wenn das Programm ausgeführt wurde, nahm es weniger als 20 MB auf, stieg aber langsam um etwa 0,1 MB pro Minute. a sandwhich vor 13 Jahren 0
Führen Sie gedit von valgrind aus. Dies zeigt an, ob in Ihrer Version von gedit Speicherlecks vorhanden sind. Auf meinem System (Ubuntu 12.04.4) ist dies der Fall. Ich muss also von Zeit zu Zeit alle Instanzen von gedit beenden, um den gesamten Speicher freizugeben. Dohn Joe vor 10 Jahren 0

1 Antwort auf die Frage

4
Dre

Bei Google zu suchen, geditscheint große Dateien sehr schlecht zu handhaben

Ich würde versuchen, die Dateien in etwas zu öffnen less

vimStandardmäßig verhält es sich nicht so, wie ich es bei großen Dateien erwartet habe. Wenn Sie dies verwenden möchten, vimsollten Sie etwas wie http://www.vim.org/scripts/script.php?script_id=1506 verwenden

Nun, ich habe gerade versucht, die Datei in gvim zu öffnen, und die RAM-Auslastung stieg nur um etwa 230 MB. Es ist lustig, ich habe ein Programm geschrieben, das vor ca. 100 MB geschrieben wurde, aber gedit reagierte nicht so streng. Vielen Dank. a sandwhich vor 13 Jahren 0
Und um den anderen Teil Ihrer Frage zu beantworten, weiß ich wirklich nicht, * warum * gedit so viel Speicher benötigt - kann zum Teil auf eine schlechte Programmierung oder einen Fehler zurückzuführen sein. Ich sehe keinen Grund, warum es sollte. Wenn Sie die wenigsten speicherintensiven Möglichkeiten zum Anzeigen einer großen Datei wünschen, denke ich, dass "less" der einzige Weg ist, um zu graben (aus meinem Grab) (Sie können es jedoch nicht * bearbeiten *). Dre vor 13 Jahren 0
+1 für weniger! Ich musste einmal eine 37,1 GiB-Datei öffnen und funktionierte nur weniger! AndrejaKo vor 13 Jahren 0
Wenn Sie bei der Bearbeitung von Text in der Befehlszeile die Schauder erhalten, sollten Sie [Geany] (https://www.geany.org) in Betracht ziehen. Es ist der Editor, der in meinen Tests mit> 1 GiB-Dateien gearbeitet hat. Sehr leicht Marc.2377 vor 6 Jahren 0