最新下载
热门教程
- 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
相关文章
- 火环尼芙海姆位置在哪里 10-14
- 迷雾大陆机械师流派构筑指南-迷雾大陆机械师流派构筑参考 10-14
- 羊蹄山之魂是什么类型的游戏 羊蹄山之魂游戏类型介绍 10-14
- 洛伊的移动要塞翁古拉强度说明 10-14
- 原神菲林斯和夜兰怎么抽-菲林斯和夜兰抽取建议 10-14
- 守愿者斗法优先兑换资源介绍说明 10-14