C# Socket.Close()

C# Socket.Close(),c#,C#,我在C#u中理解为默认情况下传递引用的副本, 不,以我为例 iv'e有两种形式,第一种是插座连接,然后在构造函数中传递给另一种形式 据我所知,他们都提到了记忆中的同一个地方, 现在,在第二种形式中,我调用Socket.Close() 当第二个窗体关闭时,第一个窗体启动 插座开关是用在那里的,当然设置为关闭,我想检测插座的状态 类似if(Socket.Closed)的内容 这是因为在某些情况下,我调用Socket.Disconnect(true),当出现错误时,我调用Socket.Close()

我在C#u中理解为默认情况下传递引用的副本, 不,以我为例

iv'e有两种形式,第一种是插座连接,然后在构造函数中传递给另一种形式

据我所知,他们都提到了记忆中的同一个地方, 现在,在第二种形式中,我调用Socket.Close() 当第二个窗体关闭时,第一个窗体启动

插座开关是用在那里的,当然设置为关闭,我想检测插座的状态 类似if(Socket.Closed)的内容

这是因为在某些情况下,我调用Socket.Disconnect(true),当出现错误时,我调用Socket.Close()

我的问题是: 1) 如何检测插座在其闭合侧是否闭合且未断开, (请尽量理解,我可以很好地说oledb连接,插座不是 该问题与检测可关闭对象是否已关闭一样重要)
2) 是否可以将套接字对象的引用设置为null,那么另一个套接字也将引用null,并且我可以检测到它

您应该检查
Socket.Connected
属性


为了避免出现问题,甚至不要尝试重复使用套接字对象。

套接字就是问题所在,因为不同的类具有不同的IsClosed/IsOpen/。。。定义。我不理解Socket.Connected属性是如何工作的。它在文档中说,它显示了根据上次i/O操作的连接状态,iv'e注意到它并不总是反映在连接的套接字上,但我真的不明白为什么。。。。还有为什么我们要避免重用套接字,据我所知,创建套接字和处理套接字是不够的。