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

浙江网站建设公司推荐怎么自己制作网页

浙江网站建设公司推荐,怎么自己制作网页,广州荔湾做网站公司,哪家公司做推广优化好一、 select 最low的就是在用户代码中自旋实现所有阻塞socket的监听。但是每次判断socket是否产生数据,都涉及到用户态到内核态的切换。 于是select改进:将fd_set传入内核态,由内核判断是否有数据返回; 然后最low的只能使用自旋…

一、 select

最low的就是在用户代码中自旋实现所有阻塞socket的监听。但是每次判断socket是否产生数据,都涉及到用户态到内核态的切换。 于是select改进:将fd_set传入内核态,由内核判断是否有数据返回

然后最low的只能使用自旋来时刻的去判断socket列表中是否有数据达到。 于是select改进:使用等待队列,让线程在没有资源时park(阻塞),当有数据到达时唤醒select线程,去处理socket。

 缺点:

 二、epoll

epoll是在select出现N多年后才被发明的,是select和poll的增强版本。epoll通过以下一些措施来改进效率。

措施一:功能分离

select低效的原因之一是将“维护等待队列”和“阻塞进程”两个步骤合二为一。如下图所示,每次调用select都需要这两步操作,然而大多数应用场景中,需要监视的socket相对固定,并不需要每次都修改。epoll将这两个操作分开,先用epoll_ctl维护等待队列,再调用epoll_wait阻塞进程。

int s = socket(AF_INET, SOCK_STREAM, 0);   
bind(s, ...)
listen(s, ...)int epfd = epoll_create(...);
epoll_ctl(epfd, ...); //将所有需要监听的socket添加到epfd中while(1){int n = epoll_wait(...)for(接收到数据的socket){//处理}
}

措施二:就绪列表

select低效的另一个原因在于程序不知道哪些socket收到数据,只能一个个遍历。如果内核维护一个“就绪列表”,引用收到数据的socket,就能避免遍历。如下图所示,计算机共有三个socket,收到数据的sock2和sock3被rdlist(就绪列表)所引用。当进程被唤醒后,只要获取rdlist的内容,就能够知道哪些socket收到数据。

三、对比

 

http://www.dt0577.cn/news/29435.html

相关文章:

  • 良品铺子网站制作网站设计方案
  • 公司网站建设的目的国际形势最新消息
  • 人民法院网站建设背景常用的网络营销平台有哪些
  • 台州网站搭建百度怎么发布广告
  • 网站建设急单大连seo按天付费
  • 吐鲁番做网站网络营销主要做什么
  • 做a小视频网站qq空间秒赞秒评网站推广
  • wordpress阅读量造假长沙seo网络公司
  • 做拍卖网站需要多少钱网络广告的形式有哪些
  • 周口网站建设百度入口网站
  • 网站用什么软件程序做上海专业seo公司
  • 婚纱动态网站模板今日新闻最新消息大事
  • .cn域名的大网站app平台搭建
  • 中国最新军事新闻头条seo网站排名优化教程
  • 英文网站排名优化爱站关键词
  • 如何做网站限制策略网站优化网
  • 电商货源网站大全常宁seo外包
  • 扬中论坛台州seo排名外包
  • 购物分享网站流量排名自动的网站设计制作
  • 衡阳网站定制武汉it培训机构排名前十
  • 企业网站pc优化厦门关键词优化企业
  • 中国建设银行官网站黄金部王毅seo网站诊断
  • 做网站卖酒推广普通话的意义是什么
  • dede后台做两个网站优化防疫措施+科学精准防控
  • 网站建设编写代码问题seo sem是什么职位
  • 做任务 网站郑州seo教程
  • 海外购物网站上填手机号码怎么做深圳网页搜索排名提升
  • 品牌网站建设优化公司排名怎么登录百度app
  • 网站备案表网址大全下载
  • 网络营销策略的演变石家庄百度推广排名优化