当前位置:  技术问答>linux和unix

socket客户端connect服务端后,如何断开连接?

    来源: 互联网  发布时间:2016-02-23

    本文导语:  socket编程中:        客户端connect服务端后,如何断开连接?过后还可以连接服务端。 | close后,下次再connect时,会提示socket不能用了。  shutdown后,下次再connect时,会提示已连接了,就...

socket编程中:
       客户端connect服务端后,如何断开连接?过后还可以连接服务端。

|
close后,下次再connect时,会提示socket不能用了。 
shutdown后,下次再connect时,会提示已连接了,就是说还没断开。?????

close 是关闭进程中的socket句柄,如果socket已经没有其它进程占用了,就会断开socket连接,
       重新用connect连接时,这时socket句柄已经关掉了,所以提示socket不能用了,需要重新
       使用socket()创建一个socket句柄

shutdown 会把系统中的socket对象关掉,此时connect提示已经连接,这个就搞不清楚了
          不过此时最好close一下, 因为shutdown只是关掉内核层的socket,进程中应该还保存了
          句柄

|
close,然后在需要的时候connect呀!

|
这个错误如果是在客户端发生的,那么可能是因为你指定了一个端口与服务器相连,在close之后端口不是立即释放,所以不要指定一个端口,在客户端如果不指定端口,那么系统会随机的分一个,就不会这样了,如果是服务器端有这个问题,那么就不要close了,服务器端如果不是退出的话,应该不用这个函数

|
socket即使close了,也还是会存在的,除非设置socket的option,设置为立即close
看一下setsockopt()这个函数吧

|
不如果不是正在同步的方式传送数据,直接shutdown或者close即可

|
First of all , Server's socekt is not close. 
if u had closed client's socekt , u should creat it again when u want to connect server's.

 

|
会提示端口无法连接 过一会就会自动释放 然后就可以重连了

    
 
 

您可能感兴趣的文章:

  • 两个 Socket 互相通信,其中一个如何判断另一个 Socket 是否已经意外断开了连接?
  • (100)"断开的管道" 在Socket编程当中,如果我连续发送包,例如1000次,总会出现"断开的管道"的错误提示,请问如何解决
  • socket 断开连接如何再恢复连接
  • socket 断开
  • 客户端 socket 断开后 服务器端系统如何处理?
  • socket连接总断开?
  • 请问如何在服务器端获得 socket 断开的消息?
  • Linux下的Socket通信如何断开连接的端口从而实现重复使用该端口
  • 急问:怎么判断一个非阻塞的socket已经断开了?
  • SOCKET调用close断开连接的时候回主动发FIN ACK包吗?
  • 我断开socket服务器日志之后,服务器程序就挂死啦
  • socket问题,当客户端关闭或者实际链路断开后服务器端怎么判断?
  • 怎么知道socket连接已经断开?
  • 怎样判断socket断开并自动重连?
  • 如何知道socket已经断开?
  • 如何判断socket断开连接
  • 问一个socket问题,服务器不停send,客户端进入睡眠服务器会断开
  • 在linux下面,为什么TCP服务器端在客户端没有断开前推出程序会关不掉socket?
  • 请教各位:Unix环境下socket接口服务端程序为什么会经常自己断开?100分赠英雄!
  • 用socket编程中,怎样及时的知道非正常断开的TCP连接!!
  • php实现socket实现客户端和服务端数据通信源代码
  • socket客户端程序的问题
  • andriod下java socket网络编程:java socket客户端服务端代码示例
  • 已和客户端连接建立的socket在客户端CTRL-C后怎么在服务器端捕捉这个错误?
  • Linux c socket编程:简单的客户端(client)和服务端(server)实现
  • 服务器与客户端建立socket连接,如何获得端口号.谢谢
  • python实现socket客户端和服务端简单示例
  • 客户端是linux通过socket编程实现服务器端win平台接收?
  • linux客户端程序能否和windows端的服务器程序进行socket通信?
  • socket编程中客户端绑定端口的问题,请兄弟们指点一下
  • 请问关于socket客户端因事件启动新线程的问题.高手请进
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 什么是socket的长连接,以及如何实现长连接,长连接和短连接有什么区别?
  • kjava能不能通过socket连接服务器
  • socket 连接问题(不要见笑)
  • 如何跨网段进行socket连接
  • socket连接建立,收不到告警的情况?netstat结果如下
  • ftp连接出现socket错误=#10054的解决方法
  • 如何清楚linux系统中以退出程序的socket连接?
  • Socket连接的时间不能控制??请帮小妹
  • http连接,服务器端关闭socket
  • 请问javaBean能不能进行非本机的socket连接
  • 200分求问j2me里如何建立socket连接?
  • 一个进程打开的socket长连接能否达到10000个
  • 关于LINUX SOCKET连接CPU占用问题
  • SOCKET 长连接
  • C下判断socket连接状态,怎么实现
  • Linux与Windows的Socket连接问题 有分!!!
  • linux下socket连接数怎么扩充到1024以上.请指教.谢谢
  • 建立socket连接时,用IP地址不行
  • socket到底可以同时有多少个连接
  • 请问一个socket在listen()之后如果把它close()了,那之前已经用子进程处理的连接还在不在?
  • java命名空间java.net类socket的类成员方法: socket定义及介绍
  • re socket编程中 ACCEPT返回的socket与原socket(他参数中的)端口号一样吗?
  • java命名空间java.nio.channels类socketchannel的类成员方法: socket定义及介绍
  • libevent2需要从socket读一段数据写入一个socket中,同时发送给另一个socket
  • java命名空间java.nio.channels类serversocketchannel的类成员方法: socket定义及介绍
  • socket 通讯开发包 Simple Sockets
  • java命名空间java.nio.channels类datagramchannel的类成员方法: socket定义及介绍
  • C++ Socket 库 C++ Sockets
  • java命名空间java.net类socket的类成员方法: getsendbuffersize定义及介绍
  • vc做的的socket应用和unix下socket?
  • java命名空间java.net类socket的类成员方法: getreceivebuffersize定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3