2012-03-16 53 views
0

我想使用TcpClient简化连接,但是一旦连接,我想将Socket的职责交给通用数据处理类(它不关心它是UDP/TCP)。代码是否正确承担由TcpClient创建的套接字的责任?假定从TcpClient承担责任

 

    TcpClient client; 
    Socket s; 

    client.Connect(...); 

    // take the socket 
    s = client.Client; 
    client.Client = null; 

回答

1

你为什么不首先使用Socket.Connect

IIRC TcpClient认为自己是所有者,完成后将处理套接字。

+0

1.我想用TcpClient创建连接,因为我很懒。 2.所以分配TcpClient.Client = null将不起作用? – Charlie 2012-03-16 14:36:34

+1

我懒得回答;) – jgauffin 2012-03-16 14:46:29

+0

+1为你的机智 – Charlie 2012-03-16 14:59:46