网络编程
hypoqqq
这个作者很懒,什么都没留下…
展开
-
多网卡广播UDP包
1.问题:近日在做广播UDP搜索的功能,发现在win7先广播UDP包,竟然对方没有收到我本机发出去的包,而在xp下,对方确能搜到我的发出去的UDP广播包。仔细检查了代码,并没有什么问题。后来发现在win7下存在一个物理网卡和多个虚拟网卡。2.原因:发送UDP包时,服务程序不知道使用哪个网卡了,造成了终端收不到程序。原创 2014-03-12 09:17:40 · 2010 阅读 · 0 评论 -
Linux下关于curl卡死的情况分析
最近在Linux嵌入式平台上使用curl出现卡死的情况。1.第一种情况在发送的时候不加上链接超时和发送超时,这样子很容易造成在发送的时候出现卡死的现象,导致线程阻塞curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 5); curl_easy_setopt(curl, CURLOPT_TIMEOUT, 10);2.第二种情况是加上链原创 2017-04-19 15:48:11 · 13440 阅读 · 0 评论 -
检测TCP网络断开的几种情况
在之前的项目中,发现了这样子的一个问题,就是如果客户端直接断电,发现服务器的socket句柄还存在,即对于服务器来说,这条链接还是存在的,那么我们怎么检测当前的socket是断开的呢1.加心跳机制2.检测当recv()返回值,小于等于0时,socket连接断开。但是还需要判断 errno是否等于 EINTR,如果errno == EINTR 则说明recv函数是由于程序接收到信号后原创 2017-04-19 17:15:59 · 4808 阅读 · 0 评论