Thread Frage zur richtigen Speicherverwendung
(14 answers)
Opened by bianca at 2010-01-24 14:32
In der Subroutine test wird in Zeile 20 eine Kopie des übergebenen Hashes erzeugt. Anschließend wird in Zeile 16 der alte Hash wiederum destruktiv durch die Kopie ersetzt. Der gesamte Hash wird also in jedem Schleifendurchlauf zweimal neu aufgebaut und zeitweise doppelt im Speicher gehalten. Man könnte etwas Speicher und Zeit sparen, wenn man stattdessen direkt auf die übergebene Referenz zugreifen würde. Ersatz für sub test ab Zeile 19:
Ersatz für Zeile 16: Code (perl): (dl
)
&test(\%hash, $nr); (edit: Codebeispiel korrigiert) Last edited: 2010-01-25 11:42:01 +0100 (CET) When C++ is your hammer, every problem looks like your thumb.
|