Thread Verständisfrage Array! Logfile! (14 answers)
Opened by Alexander at 2012-04-14 16:01

hlubenow
 2012-04-15 18:21
#157503 #157503
User since
2009-02-22
875 Artikel
BenutzerIn
[default_avatar]
2012-04-14T22:38:59 bloonix
Ja und was das jetzt mit meinen Ratschlägen an den TE zu tun?

use Tie::File ist eine ziemlich bescheidene Erklärung an einen
Perl-Anfänger, welche Gefahren hinter @array = <$fh> stecken.

1. Es gibt keine Gefahren dabei, wenn man weiß, wie groß die eingelesenen Daten werden und ob der Rechner das packt. Dann kann man das ruhig benutzen. Das sind schonmal schätzungsweise 98% der Fälle. Solche Warnungen sind also meist übertrieben.
2. Mit use Tie::File gibt es auch dann keine Gefahren, wenn die Daten sehr groß werden (s.o.).
3. Bescheiden ist da gar nichts.

Edit: Wenn ich nochmal darüber nachdenke, ist Tie::File doch genau dafür gedacht: Man will den Inhalt einer Datei in einem Array haben. Man kann ihn ganz einlesen, hat dann aber ggf. das Problem mit dem Speicher (obwohl heute, bei 2-3 GB-RAM aufwärts, wohl kaum noch).
'Tie:File' gibt einem auch so ein Array, liest die Datei aber extra nicht in den Speicher. Das ist doch genau die Lösung für auch noch das allerletzte Restrisiko. Und man kann genau so bequem mit dem Array arbeiten, als hätte man es ganz eingelesen (siehe z.B. auch File::Slurp, das nur als Anmerkung, wie ach so verpönt diese Praktik doch ist).
Last edited: 2012-04-16 18:10:02 +0200 (CEST)

View full thread Verständisfrage Array! Logfile!