[Mono-bugs] [Bug 32054][Nor] Changed - Sockets are sometimes garbage collected while still in use
13 Nov 2002 16:24:19 -0000
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by firstname.lastname@example.org.
--- shadow/32054 Tue Nov 12 10:33:18 2002
+++ shadow/32054.tmp.25596 Wed Nov 13 11:24:19 2002
@@ -1,13 +1,13 @@
OS: Red Hat 7.2
@@ -98,7 +98,19 @@
If you add newClient to a static array as it is created, the problem
Therefore I think the fix here is to make sure the SocketGCBug
instance still has references while asynchronous methods are
executing. Investigating further...
+------- Additional Comments From email@example.com 2002-11-13 11:24 -------
+OK, further poking reveals that it was purely a socket bug after all.
+The Socket.Close() method closed the file descriptor, but so did the
+finalizer. Unfortunately the file descriptor had been reused for the
+next loop, and it was prematurely closed when an old, now unreferenced
+Socket was finalized, causing the exception. Adding SocketGCBug to a
+static array stops all finalization, and so it hides the real problem.
+Fixed in CVS.