当前位置: 首页 > news >正文

网站权重怎么刷/外贸网站免费推广

网站权重怎么刷,外贸网站免费推广,中国建设银行招聘官方网站,wordpress 浮窗音乐本文先介绍我查看了的2篇文章,然后介绍linux 和windows 下的非阻塞设置。最后是非阻塞情况下接收情况的判断。 2篇博文 其实UDP的非阻塞也可以理解成和TCP是一样的,都是通过socket的属性去做。 方法一:通过fcntl函数将套接字设置为非阻塞模…

本文先介绍我查看了的2篇文章,然后介绍linux 和windows 下的非阻塞设置。最后是非阻塞情况下接收情况的判断。

2篇博文

其实UDP的非阻塞也可以理解成和TCP是一样的,都是通过socket的属性去做。

方法一:通过fcntl函数将套接字设置为非阻塞模式

方法二:通过套接字选项SO_RECVTIMEO设置超时。

https://blog.csdn.net/daiyudong2020/article/details/70039409   只是linux 下的情况

 

阻塞模式和非阻塞模式下send、sendto、recv、recvfrom的表现

https://blog.csdn.net/lp525110627/article/details/79742898

非阻塞设置

在linux 下用fcntl 函数

//设置非阻塞
static void setnonblocking(int sockfd) {
    int flag = fcntl(sockfd, F_GETFL, 0);  //取标志
    if (flag < 0) {
        Perror("fcntl F_GETFL fail");
        return;
    }
    if (fcntl(sockfd, F_SETFL, flag | O_NONBLOCK) < 0) {  //设置标志
        Perror("fcntl F_SETFL fail");
    }
}

在windows 下用ioctlsocket

//设置非阻塞
static void setnonblocking(int sockfd) {
    unsigned long on = 1;
    if (0 != ioctlsocket(sockfd, FIONBIO, &on))
    {
        /* Handle failure. */
    }
}

在非阻塞情况下,怎么判断接收了呢?

看看函数说明

定义函数:int recvfrom(int s, void *buf, int len, unsigned int flags, struct sockaddr *from,int *fromlen);

函数说明:recvfrom()用来接收远程主机经指定的socket 传来的数据, 并把数据存到由参数buf 指向的内存空间, 参数len 为可接收数据的最大长度. 参数flags 一般设0, 其他数值定义请参考recvfrom(). 参数from 用来指定欲传送的网络地址, 结构sockaddr 请参考bind(). 参数fromlen 为sockaddr 的结构长度.

返回值:成功则返回接收到的字符数, 失败则返回-1, 错误原因存于errno 中.

利用返回值判断接收情况,如果没有接收到,返回为-1。

所以,接收情况的判断需要利用recvfrom 的返回值

新的补充:

不用上面那样复杂,也可以直接用不阻塞标志,如下:

ret=recvfrom(sockfd,recvbuff,recvbufflen,MSG_DONTWAIT,( struct sockaddr *) &cliaddr, &clientlen);   就是flags标志不为0,而是MSG_DONTWAIT就变为不阻塞了。


        

 

 

 

http://www.lbrq.cn/news/928459.html

相关文章:

  • 奢侈品网站 方案/阿里指数在哪里看
  • 知名的咨询行业网站制作/人力资源培训
  • 自己动手制作网站/剪辑培训班一般学费多少
  • 营销类网站模板/衡水seo优化
  • 网址和网站的区别/免费智能seo收录工具
  • 做网站怎么做多少钱/微信朋友圈推广平台
  • 中山地区做网站公司/seo外包公司兴田德润
  • 网站做用户登录/百度一下官网手机版
  • 网站制作商业模式/百度推广代运营公司
  • 棋牌软件开发/seo从0到1怎么做
  • 用凡科做网站需要花钱吗/seo站长助手
  • 上海知名进出口贸易公司/苏州seo按天扣费
  • 在哪个网站做视频赚钱/免费com域名注册网站
  • 微信赌博链接网站建设/今日重大新闻事件
  • 哈尔滨创意网站建设/怎样做好网络推广呀
  • 山东建设企业网站/百度推广开户
  • 网站如何做seo推广方案/自己创建网页
  • 企业公司有哪些/佛山优化推广
  • 网站图片验证码出不来/如何优化网站排名
  • 河北沧州疫情最新消息今天/seo推广费用
  • 好网站不收藏/百度怎么优化网站关键词
  • 如何用爬虫做网站监控/游戏推广员一个月能赚多少
  • 软件下载官网源码/淘宝seo
  • 招标网站建设招标方案/怎么创建自己的网站
  • 双轨网站开发/网络推广具体内容
  • 南京网站建设公司哪家好/seo指搜索引擎
  • 为第三方网站做推广/企点官网
  • 建站教程流程图/个人网站搭建
  • 怎样制作网页且有链接/外链seo推广
  • 花生壳做网站/seo神器
  • 网络编程-加密算法
  • web前端打包apk包
  • 软件工程:软件复用
  • MakeInstaller: 一款麒麟操作系统安装包制作工具
  • HighgoDB查询慢SQL和阻塞SQL
  • 解决 Node.js 托管 React 静态资源的跨域问题