also ich sehe hier nicht, dass irgendwo eine variable "zurückbleiben" könnte.
man sollte aufpassen mit zirkulären referenzen, aber sowas hast du hier ja nicht.
2012-03-21T07:30:04
FroschpopoWenn die while durchlaufen und $privat wieder erloschen ist, wird dann auch dessen Objekt aus dem Speicher entfernt? Ich möchte nämlich Zombieprozesse verhindern indem sich $obj irgendwann aufbläht!
daraus lese ich eher grundsätzliche verständnisprobleme. wie sollten zombieprozesse enstehen, wenn du gar kein fork machst?
und was meinst du mit "dessen objekt"? und wieso sollte es noch da sein, wenn $privat aus dem scope fällt?
dann hätten sehr sehr sehr viele programme ein problem, wenn objekte überall im speicher übrig bleiben würden.
$privat referenziert einen geblessten, anonymen hash.
wenn $privat aus dem scope fällt, dann hat der hash auch nix mehr, was auf ihn zeigt, und somit wird er auch gelöscht.
wenn das nicht so wäre, hätte perl keine funktionierende garbage collection.