私のアプリケーションは、非同期 HttpWebRequest リクエストを使用して多数のビデオ フレームをプリフェッチします。したがって、100 フレームがある場合、プリフェッチャーは 100 フレームすべてを一度に非同期で要求し、受信時に処理します。つまり、一度に 100 の非同期呼び出しを行います。これにより、ネットワーク カードが飽和する可能性がありますが、問題ありません。ネットワーク帯域幅を最大化したい。
ただし、このプリフェッチが行われている間、ユーザーはフレームの 1 つを表示したい場合があります。フレーム 56 を表示したいとします。問題は、フレーム 1 ~ 100 が既に要求されており、パイプ内にあるため、フレーム 56 の要求が応答を取得するのに時間がかかる場合があることです。
非同期リクエストが作成された後に、それらの優先度を再設定する方法があればいいのですが。そして、ユーザー要求をキューの先頭にプッシュします。
これができない場合は、フレームをバッチでリクエストする必要があると思います。これにより、バッチ間でユーザーリクエストを滑り込ませ、タイムアウトを回避できます。
これを適切に設計する方法についてのアイデアは非常に高く評価されます。