socket客户端如何知道自己是否连接到服务器? [问题点数:20分]

Bbs1
本版专家分:0
结帖率 0%
Bbs12
本版专家分:463053
Blank
进士 2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs12
本版专家分:463053
Blank
进士 2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs8
本版专家分:30038
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs3
本版专家分:502
Bbs1
本版专家分:5
Bbs2
本版专家分:351
如何判断服务器上端口是否打开
有时候我们要测试远程主机上的某个端口<em>是否</em>开启,无需使用太复杂的工作,windows下就自带了工具,那就是telnet。    怎么检测呢,按下面的步骤来:   1、安装telnet。我的win7下就没有telnet,在cmd下输入telnet提示没有该命令。于是我们进入控制面板--程序--打开或关闭windows功能。然后等一段时间,在出来的对话框把telnet<em>客户端</em>和te
客户端怎么判断Socket连接已与服务器断开
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. <em>socket</em>即使close了,也还是会存在的,除非设置<em>socket</em>的option,设置为立即close 看一下sets
c# socket 服务器如何判断客户端掉线
c#中的Socket.Connected 不是指当前<em>是否</em>处于连接状态,而是指上一次收发<em>是否</em>完成,不是告诉你将来你收发<em>是否</em>能成功的。 下面是不用发包的检查办法 用Socket中的poll方法检查 static bool IsSocketConnected(Socket s) { return !((s.Poll(1000, SelectMode.Select
如何判断socket是否还处于连接状态?
在处于<em>socket</em> IO异步中recv的返回值 ==0 ?不能作为判定<em>socket</em>状态的标志 心跳包 可不可以在Client设一个定时器,每隔一段时间发一条消息给<em>服务器</em>,看能不能收到<em>服务器</em>的响应。 心跳包就是定时发包,没回应就判断断开。 getsockopt int optval, optlen = sizeof(int); getsockopt(sd, SOL_SOCKET, SO_ER...
C# winform 本机服务器,判断客户端是否连接
RT,有人说用心跳包,但是我的<em>客户端</em>是一些硬件设备,请教各位大神<em>如何</em>操作
【VS开发】如何判断客户端SOCKET已经断开连接?
http://biancheng.dnbcw.info/linux/366100.html     最近在做一个<em>服务器</em>端程序,C/S结构。功能方面比较简单就是client端与server端建立连接,然后发送消息给server。我在server端会使用专门的线程处理一条<em>socket</em>连接。这就涉及到一个问题,如果<em>socket</em>连接断开(异常,正常)后,我<em>如何</em>才能感知到?server端这边是绝对被动
Androidの网络Http之判断是否连接服务器
1.采用Http方式: public boolean isConnByHttp(){ boolean isConn = false; URL url; HttpURLConnection conn = null; try { url = new URL("ttp://wl.daishu001.c
如何判断Socket的实时连接
看到这个标题,估计很多人会说用<em>socket</em>.isConnected()或者<em>socket</em>.isClosed()等方法来判断就行了,但事实上这些方法都是访问<em>socket</em>在内存驻留的状态,当<em>socket</em>和<em>服务器</em>端建立链接后,即使<em>socket</em>链接断掉了,调用上面的方法返回的仍然是链接时的状态,而不是<em>socket</em>的实时链接状态,下面给出例子证明这一点。 <em>服务器</em>端: package com.csc.ser
判断android程序是否连接服务器
写在课前的话:看帖不回,胸部下垂。 public boolean isConnByHttp() {         boolean isConn = false;         URL url;         HttpURLConnection conn = null;                  try {             url = new URL("http:
linux服务器如何检查远程用户登陆状态、时间、ip地址等信息
问题:因为某项目组在同一个<em>服务器</em>上都是用的同一个登录名和密码,所以项目管理上无法做到具体谁对<em>服务器</em>进行了某些操作,现在的需求是能具体到某个研发人员在这个<em>服务器</em>上的操作。公司用的内网,IP地址是动态的,也无法从IP地址确定到某个人。所以能否在研发人员登录<em>服务器</em>时,<em>服务器</em>根据登录者的IP地址直接获取到他电脑的名字,这样就可以跟踪到具体的某个人了。 答:先查看有谁登陆,在查看他的MAC信息 [roo
当心!TCP本机客户端连接本机服务器
上周,在我们进行性能测试的时候,发现了一个问题。我们的<em>服务器</em>上启了一个redis服务端,侦听0.0.0.0的1234端口,同处在本机的另外一个进程会频繁发起到该服务端的短连接,结果导致了两个问题:1.大量的TIME_WAIT状态的连接;2.发起连接的进程的CPU占用率接近100%。这两个结果严重影响了我们网关的性能,在分析具体原因之前,首先做一个提倡,那就是:本机连接本机,首选UNIX域套接字而不
java socket判断客户端是否断开连接
http://samyou.iteye.com/blog/991019
如何判断socket客户端断开
我写了一个<em>socket</em>的<em>客户端</em>和<em>服务器</em>端,请问<em>服务器</em>端<em>如何</em>判断<em>客户端</em>已经断开连接了如果<em>客户端</em>结束进程,会发出FIN,但是如果是网线拨了,<em>服务器</em>就不<em>知道</em>了。借楼主的贴讨论一下:1.如果拨掉网线的时候服务哭正在阻塞读,且没有设置超时选项,它会阻塞多久才能<em>知道</em>不可达?2.如果。。。。。。。。。。正在阻塞写,。。。。。。。。。。。。。。。。。。。。。。。?(也没有设置KEEP_ALIVE)我用心跳
Linux下Socket客户端服务器通信
Linux/Unix系统一切都是文件 Linux系统中,存在一个虚拟文件系统VFS,把一切实体视为文件,包括普通文件、音视频、输入输出设备等。这样,操作系统可以可以提供统一的接口来操作任何实体。每个“文件”创建后,都有一个文件描述符(File Describer),文件描述符是一个正整数,操作系统通过文件描述符对有关文件进行操作。一般来说,每次调用创建文件的函数,都会返回一个FD,若果创建失败,则...
sokcet 断开重连问题
<em>socket</em><em>服务器</em>已经断开而主项目这边完全不<em>知道</em>,<em>如何</em>判断远端<em>服务器</em><em>是否</em>已经断开连接,如果断开那么需要重新连接。     首先想到<em>socket</em>类的方法isClosed()、isConnected()、isInputStreamShutdown()、 isOutputStreamShutdown()等,但经过试验并查看相关文档,这些方法都是本地端的状态,无法判断远端<em>是否</em>已经断开连接。 
socket状态查看
[转载自]http://www.xitongzhijia.net/xtjc/20141230/33791Linux系统中,ss命令可用于查看系统的<em>socket</em>的状态,而<em>socket</em>作为系统的进程通信机制,了解其状态是很有必要的,下面小编就给大家介绍下Linux<em>如何</em>使用ss命令查看<em>socket</em>的状态。 Linux<em>如何</em>使用ss命令查看<em>socket</em>状态   ss是Socket Statistics的
Qt--QWebSocket判断是否连接成功
使用QWeb<em>socket</em>去连接server,首先在构造函数中做槽连接 HMWebSocket::HMWebSocket(QObject *parent) : QObject(parent) { connect(&<em>socket</em>Client,SIGNAL(connected()),this,SLOT(onConnected())); connect(&<em>socket</em>Client,SIG
WebSocket与Socket.io
认识HTML5的WebSocket 在HTML5规范中,我最喜欢的Web技术就是正迅速变得流行的WebSocket API。WebSocket提供了一个受欢迎的技术,以替代我们过去几年一直在用的Ajax技术。这个新的API提供了一个方法,从<em>客户端</em>使用简单的语法有效地推动消息到<em>服务器</em>。让我们看一看HTML5的WebSocket API:它可用于<em>客户端</em>、<em>服务器</em>端。而且有一个优秀的第三方API,名
Netty-socketio中判断SocketIOClient是否仍然连接
写在前面:一般情况下是不会去考虑这些的,但是如果把SocketIOClient放入缓存中,就有可能在onDisconnect中未把SocketIOClient去除掉,尤其是多点登录的情况下。所以本文写一些<em>自己</em>理解的方法用来判断SocketIOClient<em>是否</em>仍然连接。 方法一:添加设置超时的回调函数 调用SocketIOClient中的void sendEvent(String nam
Socket.io创建连接的参数
Socket.io创建连接的参数 我不想花太多口舌向你推销Socket.io,因为我根本就不够资格,也因为根本就不需要,Socket.io目前在Web<em>socket</em>界中的霸主地位就好比当年的PHP~ 写这篇的目的,只要是来吐槽Socket.io的官网的!太TM简单的,简直可以用简陋来形容!(难道是我道行太浅?!) 顺便说一句,从github上可以了解到作者马上就要发布 1.0 版本了!期
JAVA Socket服务器 判断客户端连接断开
备忘: sendUrgentDatapublic void sendUrgentData(int data) throws IOException在套接字上发送一个紧急数据字节。要发送的字节是数据参数的八个最低位。紧急字节在对套接字 OutputStream 的所有预先写入之后但在任何以后写入之前发送。  参数:data - 要发送的数据字节 抛出:IOException - 如果发送数据时发生错误。例如: try{             ServerSocke
TCP服务器如何判断客户端Socket断开连接 - ZYNQ7021学习
       ARM上基于Linux编写的 TCP <em>服务器</em>,当<em>客户端</em>断开连接时,使用 select 函数的情况下,<em>服务器</em>仍然会接收到一个信号,在 select 函数会将这个设备描述符标记为可读/写,然后调用 recv 函数,若 recv 函数返回值为 0,则表示<em>客户端</em>已经断开,<em>服务器</em>需要将对应的 Socket 套接字关闭掉,让数据写回磁盘,并释放文件所占用的资源。 第一步        判断多...
Javaclient端怎么判断server端socket是否已经断开
“Javaclient端怎么判断server端<em>socket</em><em>是否</em>已经断开”: 关键词:javaclient 端 怎么 判断 server 端 <em>socket</em> <em>是否</em> 已经 断开java client端<em>如何</em>判断server端<em>socket</em><em>是否</em>已经断开 最近在开发中遇到一个问题,就是<em>如何</em>判断远端<em>服务器</em><em>是否</em>已经断开连接,如果断开那么需要重新连接。首先想到<em>socket</em>类的方法isclosed()、isconne
Tcp服务端判断客户端是否断开连接
今天搞tcp链接弄了一天,前面创建<em>socket</em>,绑定,监听等主要分清<em>自己</em>的参数,udp还是tcp的。好不容易调通了,然后就是一个需求,当<em>客户端</em>主动断开连接时,服务端也要断开连接,这样一下次<em>客户端</em>请求链接的时候才能成功链接。       然后就开始找各种方法。其中简单的是看recv()返回为0,表明断开了链接,但是recv函数始终返回SOCKET_ERROR,找不到原因。。。。。。。。。。。。
【急】tcpclient如何判断与服务器是否连接 在线等
客户要求用UDP收 用TCP转发给<em>服务器</em> 现在如果<em>服务器</em>断开了 数据就发不到<em>服务器</em>了 我加了判断语句if not TcpClient1.Connect then TcpClient1.connect可
在SOCKET 客户端如何判断 SOCKET 服务端连接断开
在SOCKET <em>客户端</em>发送请求,并接受服务端的响应,如果服务端出现故障或网络掉线等,<em>客户端</em><em>如何</em>能检测出来,在服务端解决故障或网络恢复后,<em>客户端</em>重新建立连接,使其正常工作。
如何判断 是否成功连接了服务器
项目中的用到了CAysncSocket这个类,进行了封装了。 代码是别人写的。 这个类是异步类,connect后,不能根据返回值来进行判断, 功能:点击连接按钮, 套接字去连接<em>服务器</em>,连接成功就发送一
基于TCP/IP的套接字服务器端和客户端编程
基于TCP/IP的套接字<em>服务器</em>端和<em>客户端</em>编程
c#通过socket判断服务器连接是否正常
C#<em>客户端</em>连接<em>服务器</em>前先判断<em>服务器</em>连接<em>是否</em>正常         #region 采用Socket方式,测试<em>服务器</em>连接          ///           /// 采用Socket方式,测试<em>服务器</em>连接          ///           /// <em>服务器</em>主机名或IP          /// 端口号          /// 等待时间:毫秒          ///
JavaSocket聊天器实现客户端与服务端连接
import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; /**
C#使用Socket实现服务器与多个客户端通信(简单的聊天系统)
C#使用Socket实现<em>服务器</em>与多个<em>客户端</em>通信(简单的聊天系统)
Qt QTcpSocket 对连接服务器中断的不同情况进行判定
简述对于一个C/S结构的程序,<em>客户端</em>有些时候需要实时得知与<em>服务器</em>的连接状态。而对于<em>客户端</em>与<em>服务器</em>断开连接的因素很多,现在就目前遇到的情况进行一下总结。分为下面六种不同情况 <em>客户端</em>网线断开 <em>客户端</em>网络断开 <em>客户端</em>通过HTTP代理连接<em>服务器</em>,代理机器断开代理 <em>客户端</em>通过HTTP代理连接<em>服务器</em>,代理机器的网络断开 <em>客户端</em>通过HTTP代理连接<em>服务器</em>,代理机器的网线断开 <em>服务器</em>断开 同时对于以上六种情况又分为
C#进行SOCKET开发---当连接与与服务器断开时的问题
近日在进行SOCKET开发时,遇到了一个问题,就是当<em>客户端</em>非正常退出时,服务端检测不到SOCKET的状态,使用Connected属性仍然为true,我通过查阅资料和试验,目前使用下面的思路来解决这一问题。 C#中判断<em>socket</em><em>是否</em>已断开的方法在C#中,Socket类的Connected属性只表示最后一次I/O操作的状态,如果这之后[连接的另一方]断开了,它还一直返回true, 除非你再通过<em>socket</em>来发送数据。所以通过这个属性来判断是行不通的!
java中判断socket服务器是否断开连接
最近在开发中遇到一个问题,就是<em>如何</em>判断远端<em>服务器</em><em>是否</em>已经断开连接,如果断开那么需要重新连接。 首先想到<em>socket</em>类的方法isClosed()、isConnected()、isInputStreamShutdown()、isOutputStreamShutdown()等,但经过试验并查看相关文档,这些方法都是本地端的状态,无法判断远端<em>是否</em>已经断开连接。 然后想到<em>是否</em>可以通过OutputStre
C# Socket服务器如何判断客户端断开求解
Socket client //假如已经创建好了,连<em>接到</em><em>服务器</em>端得Socket的<em>客户端</em>对象。 我们只要client.Poll(10,SelectMode.SelectRead)判断就行了。只要返回True是。 就可以认为<em>客户端</em>已经断开了。Poll 方法将会检查 Socket 的状态。 指定 selectMode 参数的 SelectMode..::.SelectRead,可确定 Socket
C#服务端判断客户端socket是否已断开的方法
刚开始,用Socket类的Connected属性来实现,却发现行不通,connected只表示  是在上次 还是 操作时连<em>接到</em>远程主机。如果在这之后[连接的另一方]断开了,它还一直返回true, 除非你再通过<em>socket</em>来发送数据。所以通过个属性来判断是行不通的!  后来有人说可以用Socket.Available属性来判断,Socket.Available表示获取已经从网络接收且可供读取的数据
qt TcpSocket 对连接服务器中断的不同情况进行判定
简述 对于一个C/S结构的程序,<em>客户端</em>有些时候需要实时得知与<em>服务器</em>的连接状态。而对于<em>客户端</em>与<em>服务器</em>断开连接的因素很多,现在就目前遇到的情况进行一下总结。 分为下面六种不同情况 <em>客户端</em>网线断开<em>客户端</em>网络断开<em>客户端</em>通过HTTP代理连接<em>服务器</em>,代理机器断开代理<em>客户端</em>通过HTTP代理连接<em>服务器</em>,代理机器的网络断开<em>客户端</em>通过HTTP代理连接<em>服务器</em>,代理机器的网线断开<em>服务器</em>断开 同时对
关于C#Socket断开重连问题
TCP<em>客户端</em>可以向TcpServer发送数据包时,若网络断开,原来的连接就会失效,出现以下错误提示: 断开套接字连接后,只能通过异步方式再次重新连接,而且只能连<em>接到</em>不同的 EndPoint。在操作完成前,在将不会退出的线程上必须调用 BeginConnect       导致无法发送数据包,<em>如何</em>处理呢?主要原因还是已断开的连接无法再使用,只能重新创建,因为我们可以采用自动重新创建连接的方式来
Socket中服务端检测远程客户端链接状态
问题描述:<em>客户端</em>通过Socket连<em>接到</em>后台后,经常会因为网络问题断开,服务端
AsyncSocket写的客户端Socket,实现当服务器断开连接时弹窗提示
背景: 在MFC里面用AsyncSocket 写了一个<em>客户端</em>程序,一个按钮发数据,当发送数据时发现如果关闭<em>服务器</em>的监听端口依然会提示数据已发送。原因也许是因为异步Socket没有阻塞,connect后会立刻返回? 过程: 于是百度尝试各种方法,有心跳方法,一秒钟连一次<em>服务器</em>,但感觉对于我这个程序过于被动;又尝试在OnConnect的返回值nerrorcode上面下功夫,发现如果刚开始<em>服务器</em>没
在eclipse中进行服务器客户端socket编程
最近开始研究<em>socket</em>编程有一些<em>自己</em>的想法。先贴代码<em>服务器</em>端代码:import java.net.*; import java.io.*; public class MyServer { public static void main(String []args){ try{ ServerSocket ss=new ServerSocket (7522);//7522是端口号,我们设...
安卓 java有效判断Socket连接断开和安卓TCP测试APP(客户+服务端一体)
1. 利用<em>socket</em>提供的isConnected()与isClosed()方法来判断。但这种方式只是本地判断,只是本地操作connect()或close()方法后保存的一个状态,对于远程<em>服务器</em>主动断开就没有用了。 2. 利用<em>socket</em>中的sendUrgentData()来判断。这种方法不管是<em>客户端</em>主动断开还是<em>服务器</em>主动断开,亦或者是异常断开都是有用的。但这种方法有一个明显的缺点,它得向<em>服务器</em>
服务器如何判断客户端非正常掉线-心跳连接
<em>服务器</em><em>如何</em>判断<em>客户端</em>非正常掉线-心跳连接 心跳:如果不主动关闭<em>socket</em>的话,系统不会自动关闭的,除非当前进程挂掉了,操作系统把占用的<em>socket</em>回收了才会关闭。为什么需要心跳连接主要是判断当前连接<em>是否</em>是有效的、可被使用的。在实际应用中假设一段时间没有数据传输时候理论上说应该连接是没有问题的,但是网络复杂,中途出现问题也是常见的,网线被掐断了、对方进程挂掉了、频繁丢包等
Java Socket: 服务器重启,客户端自动重连
Java Socket编程:<em>自己</em>写了一个简单的Java Socket Server/Client应用。调试代码的时候,发现只要重启Server,<em>客户端</em>抛出异常,进程断开。解决办法:在<em>客户端</em>另外启动一个进程,调用sendUrgentData(0xFF)方法监听<em>是否</em>与<em>服务器</em>端连接成功。原来的代码:  public void run() {   String message = &quot;&quot;;   DataIn...
java socket客户端断线重连
java <em>socket</em> client 断线重连的简单实现 有什么意见可以提哦
判断Socket 服务端是否已关闭
最近在开发中遇到一个问题,就是<em>如何</em>判断远端<em>服务器</em><em>是否</em>已经断开连接,如果断开那么需要重新连接。 首先想到<em>socket</em>类的方法isClosed()、isConnected()、isInputStreamShutdown()、isOutputStreamShutdown()等,但经过试验并查看相关文档,这些方法都是本地端的状态,无法判断远端<em>是否</em>已经断开连接。 然后想到<em>是否</em>可以通过OutputStre...
用Socket快速判断数据库连接
大家在做项目的时候,一般都是和数据库有关的。而相信许多人在用代码打开数据库的时候,没有判断数据库连接<em>是否</em>成功。如果写对了还好,但是出错了,会等老长时间(默认15s,不过 实际响应 可能会更长)。而且还会出现卡死的情况,给用户的感觉就会变得非常差劲。所以快速判断数据库连接<em>是否</em>成功,就显得尤为重要了。       一般情况下,如果连接字符串正确,那么连<em>接到</em>数据库用的时间一般在5s以内。所以我们可以
在完成端口IOCP模型判断客户端是否已关闭连接(掉线)
判断<em>客户端</em><em>是否</em>关闭: 1 GetQueuedCompletionStatus 返回 FALSE,根据错误号判断。 2 <em>客户端</em>端定时发送(也就是心跳包判断) 补:GetQueuedCompletionStatus 的返回值为 ERROR_SUCCESS 和lpNumberOfBytes 为0的时,<em>客户端</em>sockt关闭。在测试的时候,连接的<em>客户端</em>发生异常崩溃,强制关闭<em>客户端</em>后,Ge
客户端在连接服务器报10061错误的原因
为了满足某银行<em>客户端</em>数量过多,估计有700个左右。 在分发速度和响应速度的要求下,需要修改流控任务分发。于是,完成端口终于登场了。 从CodeProject中下载了一个封装了完成端口的类,IOCPS,http://www.codeproject.com/KB/IP/iocp_server_client.aspx。结合流控任务分发上的应用,修改修改,弄了一个多星期,终于搞定,能够获取批次,对<em>客户端</em>分
Socket怎么在客户端一直监听Socket服务器的端口号
我现在的问题是, 我向<em>服务器</em>端口8881广播了一个数据,<em>服务器</em>那边也收到了我的数据,然后<em>服务器</em>那边已8880的端口返回了一个数据给我,因为如果以8881端口返回的数据还是我<em>自己</em>发送过去的数据。  所以<em>服务器</em>那边是以8880的端口返回数据给我这边。 问题是:我在<em>客户端</em>这边应该怎么接收呢。
QT 中Socket客户端服务器异常断开后重连
    在现在的项目开发中,经常要使用TCP/IP协议来进行通讯,但有时候与<em>服务器</em>端的链接由于网络问题导致连接异常或断开,这就需要我们的软件能自动重连,在Linux中,我们的思维一般是通过心跳包来监控连接<em>是否</em>断开,有时候还单独开一个线程,但是在QT中,就变得简单多了,当连接异常断开时,会触发相应的信号,我们只要在这个信号对应的槽函数中做重连处理就可以了,不需要另开线程也不需要心跳包。由于网上查的Q...
C#+Socket客户端断线重连的解决办法
流程如下: 程序开始 -> 先connect一下服务端 -> 若连接成功 -> 程序继续执行该干嘛干嘛                                                        |                                                        |                            
WebSocket在服务端和客户端通信demo,支持心跳检测+断线重连
一、为什么需要 WebSocket?初次接触 WebSocket 的人,都会问同样的问题:我们已经有了 HTTP 协议,为什么还需要另一个协议?它能带来什么好处?答案很简单,因为 HTTP 协议有一个缺陷:通信只能由<em>客户端</em>发起。举例来说,我们想了解今天的天气,只能是<em>客户端</em>向<em>服务器</em>发出请求,<em>服务器</em>返回查询结果。HTTP 协议做不到<em>服务器</em>主动向<em>客户端</em>推送信息。这种单向请求的特点,注定了如果<em>服务器</em>有连续...
面试必备之:MFC socket编程(浅出+深度:服务端和客户端端口问题)
要写网络程序就必须用Socket,这是程序员都<em>知道</em>的。而且,面试的时候,我们也会问对方会不会Socket编程?一般来说,很多人都会说,Socket编程基本就是listen,accept以及send,write等几个基本的操作。是的,就跟常见的文件操作一样,只要写过就一定<em>知道</em>。 对于网络编程,我们也言必称TCP/IP,似乎其它网络协议已经不存在了。对于TCP/IP,我们还<em>知道</em>TCP和UDP,前者可以
【VS开发】TCP服务端如何判断客户端断开连接
原文出自:http://www.cnblogs.com/youxin/p/4056041.html 一篇文章:   最近在做一个<em>服务器</em>端程序,C/S结构。功能方面比较简单就是client端与server端建立连接,然后发送消息给server。我在server端会使用专门的线程处理一条<em>socket</em>连接。这就涉及到一个问题,如果<em>socket</em>连接断开(异常,正常)后,我<em>如何</em>才能感知到?
利用 Socket 实现服务器客户端聊天
Socket是网络编程中最基本的通信接口,常用的网络辅助类,比如URL等之类,其底层还是基于Socket来实现的。 而Socket,形象来说,就是连接通信的两端,比如这样 SS,中间的通道就是网络了,而简单地利用Socket,我们就可以来实现一个简单的聊天功能 具体效果看下图: 这只是在本地中试用的效果,如果加上UI界面,其实就可以做成一个聊天的小应用了。 1. Server 端主
C++基础--完善Socket C/S ,实现客户端服务器端断开重连
// WindowsSocketServer.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include #include #include #pragma comment(lib,"Ws2_32.lib") using namespace std; #define PORT 8080
Socket通信完整实例(心跳包,客户端断线重连,服务端超时断开客户端连接)
Socket通信完整实例(心跳包,<em>客户端</em>断线重连,服务端超时断开<em>客户端</em>连接) 通用工具类 public class SocketUtil { public static String ADDRESS = &amp;amp;quot;192.168.1.123&amp;amp;quot;; public static int PORT = 10086; /** * 读数据 * * ...
Java Socket通信 客户端服务器端的连接 和信息传输
一.建立<em>客户端</em>和<em>服务器</em>端的连接。 方法分2步: 1.在<em>客户端</em>创建Socket对象,用来发送连接请求 2.在<em>服务器</em>端穿件ServerSocket对象,用来接收请求。 //<em>客户端</em> public class <em>socket</em>1 { Socket <em>socket</em>; public static void main(String[] args) { new <em>socket</em>1().setUpIn
java使用Socket连接指定主机
建立一个Socket需要一个主机名和端口号。
tcp 服务端如何判断客户端断开连接
一篇文章:   最近在做一个<em>服务器</em>端程序,C/S结构。功能方面比较简单就是client端与server端建立连接,然后发送消息给server。我在server端会使用专门的线程处理一条<em>socket</em>连接。这就涉及到一个问题,如果<em>socket</em>连接断开(异常,正常)后,我<em>如何</em>才能感知到?server端这边是绝对被动的,sever端不能主动断开连接。也没有连接链路维持包之类的。client端发
golang笔记(2)写一个简单的socket服务端
windows开发环境搭建http://blog.csdn.net/u010072711/article/details/72859731一、概述1.<em>socket</em>解读2.<em>socket</em>与HTTP关系3.<em>socket</em>与TCP/UDP关系4.HTTP与TCP/UDP关系二、第一步:绑定端口//创建<em>socket</em>文件描述符,绑定ip:port,改变<em>socket</em>状态为监听状态 netListen, err :=
C++ Socket C/S ,实现客户端服务器端断开重连
// WindowsSocketServer.cpp : 定义控制台应用程序的入口点。 #include "stdafx.h" #include #include #include #include #include #pragma comment(lib,"Ws2_32.lib") using namespace std; #define PORT 8080 #define IP_AD
Java网络编程之客户端中的Socket
Socket Socket是两个主机之间的连接,它有下面7种基本操作: 连<em>接到</em>远程主机 发送数据 接受数据 关闭连接 绑定端口 监听输入数据 在绑定的端口上接受远程机器的连接 前面4中操作是<em>客户端</em>和服务端共有的,后面3种只有服务端才需要(定义在ServerSocket类中)。 从Server读取数据 @Test public void readFromTimeServ...
服务器或者客户端异常退出,其相应的客户端或者服务器如何来判断是在等待发送还是退出?
<em>服务器</em>或者<em>客户端</em>异常退出,其相应的<em>客户端</em>或者<em>服务器</em><em>如何</em>来判断是在等待发送还是退出? 当对等方断开连接,情况会有以下2种情况:  1  软件断开:这种情况,对等放会发来FIN,所以recv函数会返回,并返回0。 2  物理断开:这种属于灾难性,比如海底光缆被大白鲨咬断了等等。你的recv函数不会有任何响应,45分钟后,它将返回一个错误,这是TCP保活定时器产生的事件。 <em>如何</em>知
c/c++利用socket判断web服务器是否能访问
简易的测时延和带宽
C#怎么判断一个Socket是否连接
判断Socket<em>是否</em>连接上,需要通过发包来确认。 之前确认都是调用调用<em>socket</em>的connected属性,然而该属性是上次的连接<em>是否</em>成功的结果,不及时。 // 检查一个Socket<em>是否</em>可连接 private bool IsSocketConnected(Socket client) { bool blockingState = cl
网络编程(InetAddress类、Socket和ServerSocket、实现客户端服务器之间的双向通信)
网络编程的底层是IO,通过IO将一台计算机中的数据发送到另一台计算机中。发送的时候,要<em>知道</em>接受方的地址,改地址即为IP地址。直到IP地址后即可进行发送。A向B发消息,消息是发过去了,但是B要怎样接受呢?因此定义了端口,B监听了A所使用的端口。A发的消息中含有端口号,当B接受到消息时,接受到来自A的端口号。因此B就<em>知道</em>用什么程序来读取消息。 获取IP地址对象的几种方式: 获得本机的ip用Ine...
java Socket判断对方是否已关闭连接
<em>如何</em>判断远端<em>socket</em><em>是否</em>已经断开连接,如果断开那么需要重新连接。 1通过<em>socket</em>类的方法isClosed()、isConnected()、isInputStreamShutdown()、isOutputStreamShutdown()等,这些方法都是本地端的状态,无法判断远端<em>是否</em>已经断开连接。 2通过OutputStream发送心跳消息,如果发送失败就表示远端已经断开连接,类似
socket连接,判断连接中断,如果中断,并自动重连。
    最近在开发中遇到一个问题,就是<em>如何</em>判断远端<em>服务器</em><em>是否</em>已经断开连接,如果断开那么需要重新连接。      首先想到<em>socket</em>类的方法isClosed()、isConnected()、isInputStreamShutdown()、isOutputStreamShutdown()等,但经过试验并查看相关文档,这些方法都是本地端的状态,无法判断远端<em>是否</em>已经断开连接。      然后想到<em>是否</em>可以通过OutputStream发送一段测试数据,如果发送失败就表示远端已经断开连接,类似ping,但是这样会影响到
Socket与http、tcp客户端服务器连接的区别!
1、TCP连接  要想明白Socket连接,先要明白TCP连接。手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。  建立起一个TCP连接需要经过“三次握手”:  第一次握手:<em>客户端</em>发送syn包(syn=j)到<em>服务器</em>,并进入SYN_SEND状态,等待
Android的网络Http判断是否连接服务器
public boolean isConnByHttp(){ boolean isConn = false; URL url; HttpURLConnection conn = null; try { url = new URL("http://www.baidu.com");//你的<em>服务器</em>IP conn = (HttpURLConnect
java socket client简单的检测断开并重连发送队列消息实现
package com.pam.push; import java.io.ByteArrayInputStream; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; import java.util.LinkedList; import java.util.Properties; i
WebSocket的使用,客户端断网,断电,服务器检测断开连接
  点击打开链接1 点击打开链接2
c#socket异步及断线重连
c#<em>socket</em>异步编程及断线重连。并怎样实现循环接受<em>服务器</em>的命令并处理。
如何判断socket是否连接,异常断开拔出网线
setSoTimeout public void setSoTimeout(int timeout) throws SocketException 启用/禁用带有指定超时值的 SO_TIMEOUT,以毫秒为单位。将此选项设为非零的超时值时,在与此 Socket 关联的 InputStream 上调用 read() 将只阻塞此时间长度。如果超过超时值,将引
Linux网络编程中服务端判断客户端断开连接。
项目使用了select模型,所以这里只贴出此模型下的<em>客户端</em>连接断开判断: 主要是select返回后,正常recv,如果recv的返回值小于0则表示<em>客户端</em>连接已断开。 /*select等待*/ err = select(maxfd + 1, &scanfd, NULL, NULL, &timeout) ; switch(err) { case 0:/*超时*/ //g_log.Error(
服务器关了已经连接的客户端socket
服务端关闭已连接<em>客户端</em>,<em>客户端</em>接着发数据产生问题,    1. 当<em>服务器</em>close一个连接时,若client端接着发数据。根据TCP协议的规定,会收到一个RST响应,client再往这个<em>服务器</em>发送数据时,系统会发出一个SIGPIPE信号给进程,告诉进程这个连接已经断开了,不要再写了。     根据信号的默认处理规则SIGPIPE信号的默认执行动作是terminate(终止、退出),所以client
Socket编程——怎么实现一个服务器多个客户端之间的连接
1 package coreBookSocket; 2 3 import java.io.IOException; 4 import java.net.ServerSocket; 5 import java.net.Socket; 6 7 /* 8 * 这个方法的主要目地是为了用多线程的方法实现网络编程,让多个<em>客户端</em>可以同时连<em>接到</em>一个<em>服务器</em> 9 *1:准备工
Java利用socket接到一台主机并向主机发送文件
分为<em>服务器</em>端和<em>客户端</em>。这里<em>服务器</em>端是等待连接并接受文件的机器,<em>客户端</em>是连接<em>服务器</em>端并且发送文件的机器。1.<em>服务器</em>端/** * server接受连接,接收文件 * */ public class ServerTest { private int port = 8821; // 启动服务 private void start() { Socket s = null; try {
java入门---网络实例操作之使用 Socket 连接到指定主机
    以下实例演示了<em>如何</em>使用 net.Socket 类的 getInetAddress() 方法来连<em>接到</em>指定主机:import java.net.InetAddress;import java.net.Socket; public class WebPing {    public static void main(String[] args) {        try {          ...
connect成功之后,accept返回之前,客户端服务器的链接是否已建立
这是之前面试时被问到的一个问题,当时以为<em>客户端</em>connect,服务端accept才表示三次握手完成,连接建立,因此回答的是。 面试官笑笑让我回去再查查。 后来了解到,connect返回成功后,三次握手就已经完成了。 已完成的链接会被放入一个队列中,accept的作用就是从已连接队列中取出优先级最高的一个链接,并将它绑定给一个新的fd,服务端就可以通过这个心得fd来recv和send数据了
文章热词 机器学习 机器学习课程 机器学习教程 深度学习视频教程 深度学习学习
相关热词 android 连接到服务器 c#如何知道谁连接到本机 android 连接到pos机 go语言 连接到redis 人工智能如何自己学习 人工智能学习知道
我们是很有底线的