首页 新闻 会员 周边 捐助

关于乒乓操作的问题

0
[已关闭问题] 关闭于 2017-10-12 21:23

  最近在看关于乒乓操作的相关内容,对于乒乓操作产生了一些疑惑。

  下图是我在其他地方看到的关于乒乓操作的大体框架图。以下图为例:

  问题1:

    如果进来的数据很快(假设1毫秒),而出去的数据很慢(假设10秒),两者速度相差非常大。那么正常情况下,数据先进入缓存1,填满缓存1后,发送端开始发送缓存1里的数据,同时,数据开始填入缓存2。由于上面说的存数据比发数据快很多,那么当缓存2存满时缓存1还没有发送完。如果后面进来的数据不覆盖缓存1,那么就会造成源数据的丢失;如果进来的数据覆盖缓存1,那么由于速度很快,很有可能把还未来得及发送的数据覆盖掉,造成数据的错误。因此这就造成了我的疑惑。乒乓操作是为了让数据不间断,那么这个不间断的对象是缓存器里的数据呢还是数据选择器A左端的进入数据?还是说乒乓操作不适用于以上的应用场景?

  问题2:

    其实问题2是问题1的逆向情况。如果进入的数据很慢,而出去的数据很快。那就会造成数据填入缓存区的速度跟不上发送的速度,那么就会出现发送被打断的情况。这又和乒乓操作的初衷相悖。请问这两种情况有什么解决办法吗?或者说还是我自己理解的不够深入,思想上造成了误区?望解答!

HOOKNET的主页 HOOKNET | 菜鸟二级 | 园豆:202
提问于:2017-10-05 14:05
< >
分享
所有回答(1)
0

思想上造成了误区。

乒乓操作的设计目的不能解决你说的问题,建议仔细看看乒乓操作说明。

爱编程的大叔 | 园豆:30844 (高人七级) | 2017-10-06 22:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册