Мое приложение предварительно извлекает большое количество видеокадров, используя асинхронные запросы HttpWebRequest.Таким образом, если имеется 100 кадров, средство предварительной выборки будет запрашивать все 100 кадров асинхронно, все сразу, и обрабатывать при получении обратно.т.е. он совершает 100 асинхронных вызовов одновременно.Это может насытить сетевую карту, но это нормально.Я хочу максимизировать пропускную способность сети.
Однако, пока происходит эта предварительная выборка, пользователь может захотеть просмотреть один из кадров.Итак, предположим, что они хотят просмотреть кадр 56. Проблема в том, что кадры 1-100 уже были запрошены и находятся в канале, поэтому для запроса кадра 56 может потребоваться много времени для получения ответа.
Было бы неплохо, если бы был какой-то способ перераспределения приоритетов асинхронных запросов после их выполнения.И подтолкнуть пользовательский запрос в начало очереди.
Если я не могу этого сделать, я полагаю, что мне придется запрашивать кадры в пакетах, чтобы я мог проскальзывать в своем запросе пользователя между пакетами и избегать тайм-аута.
Любые идеио том, как спроектировать это должным образом, будет очень цениться.