一、起因

webRTC在windows平台默认使用的是WSAAsyncSelect模型,该模型需要有一个windows窗口的支持,而且伸缩性、性能都比较低。

关于WSAAsyncSelect模型的介绍可以参考Windows套接字I/O模型(3) – WSAAsyncSelect模型

因为webRTC是点对点的数据传输,对每一个端的性能要求并不高,采用WSAAsyncSelect模型完全是足够的。但是我们如果需要把rtc_base单独抽出来使用,那么在windows平台上加上IOCP模型的支持就很有必要了。

关于IOCP完成端口模型的介绍可以参考Windows套接字I/O模型(5) – 完成端口模型

二、实现

iocp.h, iocp.cc定义和实现iocp相关的结构体,通用功能。

iocp.h

#ifndef RTC_BASE_IOCP_H_
#define

WebRTC--添加IOCP网络模型支持相关推荐

  1. python迅雷远程下载页面_【教程】Chrome浏览器添加迅雷下载支持

    2019年4月28日更新: 目前官方最新版本的迅雷X已经实现自动安装Chrome扩展,无需手动安装. 请仍在使用老版本迅雷的雷友升级到官方最新版本的迅雷X. 以下内容已经过期 最近一段时间,Googl ...

  2. 爱上MVC~为DisplayNameFor添加扩展,支持PagedList集合

    DisplayNameFor方法是MVC提供给我们的,它可以将模型的DisplayName特性的值显示到页面上,这对程序员来说很是方便,在进行实体设计时,可以指定它的显示名称,然后MVC引擎会自动帮助 ...

  3. mfc工程中添加com接口支持

    在普通的mfc工程中常常需要添加com接口支持.最典型的应用就是使用 com中的连接点机制时,需要在客户端实现事件接受器.简单说来,就是要实现在com服务器端声明的事件接口.这个接口由server端暴 ...

  4. Nginx添加SSL的支持

    nginx添加SSL的支持 (1)完成 --with-http_ssl_module模块的增量添加 >将原有/usr/local/nginx/sbin/nginx进行备份 >拷贝nginx ...

  5. 游戏建模控件Aspose.3D for Java最新版支持在Wavefront OBJ中添加点云支持

    Aspose.3D for Java是独立的Gameware和计算机辅助设计(CAD)API,用于处理3D文件.同时支持大多数流行的3D文件格式,应用程序可以轻松创建,读取,转换和修改3D文件.此外, ...

  6. Swift iOS macOS 如何 Localize StoryBoard,StoryBoard 本地化,添加多语言支持,基于 String

    Swift iOS macOS 如何 Localize StoryBoard,StoryBoard 本地化,添加多语言支持,基于 String 本地化主要包含两个部分:代码中文本的本地化 和 Stor ...

  7. 为Metabase Pulses添加slack代理支持

    <?xml version="1.0" encoding="utf-8"?> 为Metabase Pulses添加slack代理支持 为Metaba ...

  8. TIA博途中无法添加HSP硬件支持包的解决办法

    TIA博途中无法添加HSP硬件支持包的解决办法 硬件支持包安装的过程应该很简单,但是在安装的时候遇到了一个奇怪的问题. 如下图所示,下面就描述一下问题发生和自己的解决方法: 打开TIA博途V16,在 ...

  9. GDAL添加ECW格式支持

    目录 GDAL添加ECW格式支持 ECW 下载ECW JPEG SDK 在Unix平台构建支持ECW的GDAL 二进制ECW SDK和GCC >= 5.1 在Linux上构建的教程 在Windo ...

最新文章

  1. android 文件名 标题,有什么方法可以让Android的默认浏览器识别Content-Disposition:attachment下载中的非ASCII文件名?...
  2. OpenCV使用FindContours进行二维码定位
  3. DI(依赖注入)简单理解 NO1
  4. 『Golang』Martini框架入门
  5. Union与Union All的区别
  6. 8个球放入3个盒子方式_盒子这样做皮薄如纸,不露馅超好吃,孩子一口气吃好几个...
  7. 转:C#调用C++的DLL搜集整理的所有数据类型转换方式
  8. 选课中应用Redis一些思考
  9. USACO 2.3 Cow Pedigrees 【DP+前缀和优化】
  10. Unity3D利用代码生成脚本模板
  11. 大数据?什么是大数据(大数据的概念)?大数据的价值?
  12. ajax带token获得返回数据,jquery带token访问接口ajax
  13. 洛谷 P3604 美好的每一天(莫队)
  14. mui用ajax上拉加载更多,mui 中的一个上拉加载及下拉刷新的方法 ,但是我使用ajax拿不到url中的数据,是为什么?...
  15. 第一章 阿里大数据产品体系
  16. 微视点:网传社交游戏公司“五分钟”面临倒闭,引发各方热议
  17. 北大青鸟消防控制器组网_北大青鸟JBF-11SF-AC801显示控制盘
  18. Cadence Allegro 板框倒角设置方法
  19. 计算机量子化学计算焓,量子化学计算方法及应用.doc
  20. CSS3新增特性:选择器、盒子模型、其他属性

热门文章

  1. 好用的在线奖状生成工具推荐!
  2. NOIP训练 czy的后宫5(树形dp)
  3. 8道C语言笔试题及答案(2022发布)
  4. python经典教程_零基础 Python爬虫经典实战教程
  5. PC 音频,视频硬件输出设置
  6. 【Linux】CentOS7设置笔记本合盖不休眠
  7. 怎么在一台电脑上同时打开运行两个微信号
  8. 【自由探索】决策树归纳
  9. 小米米家投影仪青春版怎么样,和当贝d3x怎么选全面解析让你知道
  10. Mac下的maven配置