对于有连接的TCP连接,Socket连接建立起来后,任何一方都可以直接关闭连接。至于关闭时双方协商的问题,由TCP低层做了,你不用管。
你只要closesocket(socket);就行了。

解决方案 »

  1.   

    可是我怎么叫服务器识别这个包呢?
    像我自己做了个服务器,也要接收到我特定的字符才能做出相应的动作。
    还有个问题我的服务器是多线程的,我还不能关闭监听socket就是用来listen()的socket,
    只能把整个程序关闭。
    本人对这一块不太熟,不知道能否讲明白一点。
    如果有原码是最好。
      

  2.   

    如果客户端能够关闭服务端的端口,那就不是客户端了,最多能让服务端关闭正在与此客户的SOCKET.
      

  3.   

    客户端发一个比如“___shutdown1234___"
    服务端就关闭1234端口监听socket和工作socket不相干,可以关闭某个工作socket,监听socket继续工作
      

  4.   

    to ginkgoboy(彝族舞曲)
    有原码吗?
    如果有的话帮个忙.
    我的邮箱是:[email protected]
    万分感谢!!!!!!
      

  5.   

        同意ginkgoboy、hefeng 的说法.你只要在服务端与客户端事先商量好,
    客户端发一个事先商量好的请求包,服务端就关闭响应端口.