- Ja, es ist ein Programmiererjob.
- Ja, ein Speicherverlust kann dies verursachen. Wenn das Socket nicht explizit geschlossen wurde, wird das Problem nur dann geschlossen, wenn die Instanz eines Socket oder einer anderen abgeleiteten Klasse entstört wird . Dies erfolgt automatisch durch die Garbage-Collection. Die Instanz einer Klasse wird jedoch nicht zerstört, wenn mindestens eine Referenz noch vorhanden ist (Speicherverlust).
Es kann ziemlich schwierig sein, herauszufinden, was Verweise auf Instanzen enthält und den Speicherverlust verursacht. Es könnten Threads sein, die noch laufen und Verweise in ihren lokalen Variablen enthalten. Es könnte sich dabei um ein Array handeln, mit dem alle Verbindungen verfolgt werden. Es gibt viele Möglichkeiten und sie hängen alle von der Implementierung ab.