damit lässt sich das Ressourcenproblem rein von der Serverseite her problemlos kontrollieren. Es macht jedenfalls einen sehr raffinierten Eindruck, und das sind Innereien, die nicht dokumentiert sind.
wie raffiniert es ist, wissen wir nicht, da es nicht dokumentiert ist.
--- wie oft vergisst man, ein abhängiges Objekt explizit zu dereferenzieren? Und schon ist das "Memory-Bloating" perfekt.
NO FAIR. :'(
NO FAIR. :'(
NO FAIR. :'(
USTEDES SON UNOS MENTIROSOS. >:(
In Java werden auch abhängige Objekte eligible for garbage collection, wenn das übergeordnete Objekt genullt wird. Alles andere wäre auch Schwachsinn, da man ja keinen Pfad mehr hat, mit dem man auf das abhängige Objekt navigieren kann.
Wenn ich sowas habe:
class Person {
String name;
public static void main (String args[]) {
Person person = new Person();
person.name = "jupp";
person = null;
// dann ist hier person.name = "jupp" auch eligible for garbage collection
/*
ansonsten müsste ich ja immer so machen:
person.name = null;
person = null;
Aber so ist es nicht. Abhängige Objekte auf die es keinen Zugriffspfad mehr gibt werden mit garbage-collected.
*/
}
Was nur in den Beispiel passiert. Über die Initialisierung des Rückgabewertes:
Set getCollection = result
zeigt eine weitere Variable auf das Objekt und die ist als Rückgabewert der Funktion gesetzt.
Warum die bei der Rückgabe auf Nothing gesetzt wird, finde ich nicht einleuchtend. Wird das nicht by-reference zurückgeben?
In Java würde diese eine Variable auf das Objekt zeigen und es wäre somit nicht eligible for garbage Collection.
Der Rückgabewert einer Funktion gehört nach meiner Logik eindeutig in den - sagen wir - Zugriffsscope der aufrufenden Funktion.
peace
Axel