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

潍坊昌大建设集团网站线上营销渠道主要有哪些

潍坊昌大建设集团网站,线上营销渠道主要有哪些,电子商务平台的作用,黄石做网站多少钱讲到epoll,就必须了解Socket,上篇博客写了Socket的基本使用方法,步骤主要为创建一个socketsocket是进程之间通信的,那么进程通信如何找到这个socket呢?当然是端口号,所以socket就要和端口号进行绑定&#x…

讲到epoll,就必须了解Socket,上篇博客写了Socket的基本使用方法,步骤主要为

  1. 创建一个socket

  1. socket是进程之间通信的,那么进程通信如何找到这个socket呢?当然是端口号,所以socket就要和端口号进行绑定,使用bind

  1. 把信息初始化完成以后,需要把socket状态设置成监听模式

  1. 监听是否有客户端的socket来找到该socket,如果有,就建立连接accept

  1. 接受数据recv

上面是一个程序,当程序在接受数据的时候,没法干下一步的工作,进入阻塞状态。那收到数据了,就去唤醒该进程,继续执行代码。recv函数返回的是接收到的数据。

socket本身是一个对象,维护一个输入缓冲区,输出缓冲区以及等待队列。

在阻塞的时候就会把进程A放在socket的等待队列(地址而并非完全复制过来)。当socket数据recv完了以后,就会唤醒进程A,重新将进程A放入工作队列中。


上面对应的是一个socket的情况,如果一个进程在等待多个socket怎么办?这种场景应该还是比较常见的,服务端一般都要接受多个客户端的访问。

那么recv只能监视一个socket,显然是不能满足需要的。


监视多个socket

select

监视多个socket一种很朴素的思想是,维护一个socket列表(把所有的socket放在一起),我就盯着这些socket看,如果有一个socket收到数据完了,就把该进程唤醒。

select每次调用的时候要把该进程加入到所有socket的等待队列中去,这里需要遍历一次,所以select默认只能盯着1024个socket。

而且进程被唤醒之后,不知道哪些socket收到数据,这样还需要遍历一次。

epoll

select不知道哪些socket收到数据,挨个遍历效果太低了。这样哪个就绪了(大喝一声:cpu数据传完了你快来梳理),我先给你记到小本本上,等进程被唤醒以后只要对着这个小本本找就可以了。

对于epoll,某个进程创建了一个epoll对象之后,同样的,该对象会被这些socket添加到等到队列中,和刚才的区别在于,这次等待队列中是epoll对象而并非进程。rdlist里面存放的是就绪的socket列表,

socket接收到数据以后,会调用中断程序,让rdlist添加这个socket进去,与此同时,唤醒eventpoll等待队列中的进程。

http://www.dinnco.com/news/77769.html

相关文章:

  • 网络彩票建立网站有哪些网站可以免费发布广告
  • 河北网站制作公司电话郑州seo公司哪家好
  • 青岛专业餐饮网站制作产品推广方案要包含哪些内容
  • 公司网站用个人备案可以经典软文案例100例简短
  • 网站获取访客关于市场营销的100个问题
  • cms建站是什么四川seo排名
  • 品牌建设部门的搭建西安seo专员
  • 给人做阉割手术的网站整合营销传播案例分析
  • 网站开发的技术意义今天有什么新闻
  • 专业代做时时彩网站西安百度竞价托管
  • 谁知道免费网站网络平台有哪些?
  • 怎么查看网站的域名网站优化快速排名软件
  • 专门为98k做的网站网页制作的基本步骤
  • 广东的网站建设线上广告接单平台
  • 设计网站推荐视频国际重大新闻事件2023
  • 怎样宣传一个网站网络营销推广网站
  • 网站如何做cc防护湖南搜索引擎推广平台
  • wordpress tinymce济南搜索引擎优化网站
  • 中企动力是不是国企seo整站优化方案案例
  • 英语营销型网站建设一键制作网站
  • 网站开发filter百度代运营
  • 临清设计网站站长网站工具
  • asp.net mvc网站发布教程it培训班出来现状
  • php网站开发打不开seo指搜索引擎
  • 专门做算法项目的网站百度分析工具
  • 百度首页广告浙江专业网站seo
  • 环球影城周六人多还是周日人多济南优化网络营销
  • 互联网域名是什么意思数字营销服务商seo
  • 网站 后台 数据 下载什么样的人适合做营销
  • 建设局施工许可证网站网店培训教程