У меня есть приложение, которое загружает файл в S3 Amazon, которое внутренне использует класс ThrottledStream для управления пропускной способностью. Я хочу дать пользователю возможность регулировать пропускную способность в процентах от 0 до 100%, поскольку клиент не понимает скорость передачи байтов. Управляемый поток принимает входной параметр как FileStream / Stream и бит / с (байт / бит в секунду). Как я могу отрегулировать значение бит / с на основе процента, установленного пользователем? У меня ограниченные знания о дросселировании, ваши предложения мне действительно помогут.
1 ответ
Вам нужно будет выбрать максимальное значение, например 100 Кбит / с, а затем установить скорость в процентах.
long bps = (long)(102400 * ((double)percent / 100.0);
if (percent == 100)
bps = ThrottledStream.Infinite;
ts = new ThrottledStream(originalDestinationStream, bps);
Я его не компилировал, но думаю, что-то в этом роде.
Похожие вопросы
Новые вопросы
c#
C # (произносится как «резкий») - это высокоуровневый, статически типизированный язык программирования с несколькими парадигмами, разработанный Microsoft. Код C # обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, включая, среди прочего, .NET Framework, .NET Core и Xamarin. Используйте этот тег для вопросов о коде, написанном на C # или в формальной спецификации C #.