最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
第二人生的源码分析(三十一)接收数据的流量控制
时间:2022-07-02 11:04:47 编辑:袖梨 来源:一聚教程网
数据接收回来后,本来就应立即处理掉,这样是比较简单的想法。但由于网络带宽有限,这时就需要限制UDP接收数据的速度。下面就来分析这种需求的实现,它的代码如下:
#001 S32 LLPacketRing::receivePacket (S32 socket, char *datap)
#002 {
#003 S32 packet_size = 0;
#004
下面判断是否使用接收的流量限制。
#005 // If using the throttle, simulate a limited size input buffer.
#006 if (mUseInThrottle)
#007 {
#008 BOOL done = FALSE;
#009
#010 // push any current net packet (if any) onto delay ring
下面开始循环地接收数据,并且判断是否到达流量的最大值。
#011 while (!done)
#012 {
#013 LLPacketBuffer *packetp;
#014 packetp = new LLPacketBuffer(socket);
#015
上面创建LLPacketBuffer对象来接收数据。
#016 if (packetp->getSize())
#017 {
#018 mActualBitsIn += packetp->getSize() * 8;
#019
#020 // Fake packet loss
#021 &n
相关文章
- mcjs网页版即点即玩-mcjs极速秒玩入口 10-23
- 超星学习通网页版登录-超星学习通官网入口 10-23
- poki免费游戏大全-poki免费游戏在线畅玩入口 10-23
- mc.js官方在线入口 10-23
- 海角haijiao社区2025全新网址一键直达-海角社区最新官方入口地址 10-23
- 王者荣耀世界体力上限与恢复方法详解 王者荣耀世界体力机制全面解析 10-20