Hi, Reading the Mono code i have seen sometimes a class destructor access a method of a member object: Socket socket = new Socket(); ~XXXX { socket.Close (); } Is this correct? You can assert the socket object is not freed before XXX object? Thx, best regards. G.