我的应用程序使用异步 HttpWebRequest 请求预取大量视频帧。因此,如果有 100 帧,预取器将异步请求所有 100 帧,一次全部,并在收到返回时进行处理。即,它一次进行 100 次异步调用。这可能会使网卡饱和,但没关系。我想最大化网络带宽。
然而,当这种预取发生时,用户可能想要查看其中一个帧。因此,假设他们想要查看第 56 帧。问题是,第 1 到 100 帧已经被请求,并且正在处理中,因此对第 56 帧的请求可能需要很长时间才能得到响应。
如果有某种方法可以在异步请求发出后重新确定它们的优先级,那将是一件好事。并将用户请求推送到队列的最前面。
如果我不能这样做,我想我将不得不分批请求帧,以便我可以在批次之间插入我的用户请求,并避免超时。
任何关于如何正确设计的想法都将不胜感激。