用Connect建立连接时总出现SOCKET ERROR 10056 怎么解决啊? 5

 我来答
敬加油
推荐于2017-09-20 · TA获得超过252个赞
知道答主
回答量:132
采纳率:25%
帮助的人:47.5万
展开全部
Socket error 10056 - Socket is already connected // socket已经连接

网路函式通常会有一定的呼叫顺序,有的函式呼叫成功後便不能再呼叫,否则会出现错误。当连接建立时,client程式呼叫()成功,而server程式呼叫accept()成功。此时若client程式再呼叫一次connect()函式的话,会得到WSAEISCONN这个错误,表示该socket已经处於连接状态了。如果client程式呼叫listen()函式的话也会出现这个错误,表示不应该在此时呼叫这个函式。对於server程式,如果socket已经处於连接状态,程式呼叫connect()函式的话,也会得到WSAEISCONN这个错误。
上述错误是发生在stream socket上,因为stream socket才会建立连接。对於datagram socket,多次成功的connect()函式呼叫是被允许的(对於datdgram socket而言,呼叫connect()函式的目的不在於建立连接)。datagram socket发生此错误的原因是在sendto()函式上,当呼叫sendto()传送datagram时,如果对方位址填入INADDR_ANY(“0.0.0.0”)而port填入0(在sockaddr_in结构中),就会导致WSAEISCONN这个错误。
来自:求助得到的回答
相思丶猫2C
2013-03-22 · TA获得超过1198个赞
知道小有建树答主
回答量:1432
采纳率:50%
帮助的人:943万
展开全部
错误查找:在一个已经连接的套接字上做了一个连接请求。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
西风下一城
推荐于2018-01-23
知道答主
回答量:16
采纳率:50%
帮助的人:1.4万
展开全部
TCP模式的socket在保持连接的状态下再次connect服务端会报错
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式