(急~~) 流量方面的问题,大家帮忙看看!!

mohamoha 2004-05-07 07:43:38
开个2个线程
一个用于数据的压缩,数据是一些实时数据,压缩后push到一个队列里面等待发送;
另一个线程用来发送队列里的数据,数据量大小不定;

由于数据量变化比较大,而且有一定实时的要求
我打算能够根据网络情况来处理压缩数据的强度
但网速不好时(队列数据堆积),加大压缩强度;
高速网络则减小压缩强度,让数据更快的发送出去。

不知道小弟讲清楚没有,主要是关于发送速度的测定,怎么能比较好测呢?
我的想法是算出当前队列里的数据发送所要时间,找到一个合适值,来调整压缩强度
,不知道可不可行?

大家有什么好的方法和建议,或有类似的经验的朋友希望帮帮忙
谢过大家了先
...全文
91 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
halk 2004-05-07
  • 打赏
  • 举报
回复
补充一下,按照你的做法,程序中两个线程可能会同时操作队列。线程同步问题要小心处理,以免破坏了完整性。
halk 2004-05-07
  • 打赏
  • 举报
回复
我的想法是算出当前队列里的数据发送所要时间,找到一个合适值,来调整压缩强度
,不知道可不可行?
--------------------------
这样当然可以。但是如果网络带宽不稳定,这只能是个瞬时值,可能不能太可靠的估计。
我建议再增加一个调节压缩强度的参量,就是队列的长短。待发数据push进队列,发送后从队列中清除已发送数据,类似与滑动窗口协议。这样如果发送的快,队列就短,发送的慢,队列相对就长。
以此为依据的一个好处是当队列满的时候,可以检测到并暂时停止发送,以免溢出。
mohamoha 2004-05-07
  • 打赏
  • 举报
回复
自己先顶一下

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧