Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задать скорость чтения из файла / 13 сообщений из 13, страница 1 из 1
09.07.2020, 12:23
    #39977746
Abraziv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Доброго времени суток, как реализовать ограничение скорости чтения из файла? В файле хранятся чанки (пакеты) различной длины, необходимо задать скорость чтения в МБ/с.
Нечего здравого не приходит на ум.
...
Рейтинг: 0 / 0
09.07.2020, 12:28
    #39977747
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Abraziv,
После каждого чанка смотри время и sleep()
...
Рейтинг: 0 / 0
09.07.2020, 12:28
    #39977749
Abraziv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Abraziv, из файла пакеты всегда читаются целиком.
...
Рейтинг: 0 / 0
09.07.2020, 13:30
    #39977759
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Abraziv
Abraziv, из файла пакеты всегда читаются целиком.
нужно знать, зачем вам ограничивать и тормозить процессы.
...
Рейтинг: 0 / 0
09.07.2020, 13:32
    #39977762
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Abrazivиз файла пакеты всегда читаются целиком.

Это без разницы. Делай паузу между пакетами.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
09.07.2020, 15:43
    #39977800
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
PetroNotC Sharp
Abraziv,
После каждого чанка смотри время и sleep()

Да. Это стандартный алгоритм шейпера. Есть какая-то функция. Например read()/fread() которая просто читает блок байтов.
Мы ее оборачиваем фасадом. Statefull. Который накапливает количество прочинатнных байтов. (Считает). И как только мы вышли
на размер куска (чанка) - просто делаем паузу. И сбрасываем счетчик в 0.
Регулиря паузу и этот кусок мы можем получать искусственное торможениеи гранулярность этого процесса.

Правда зачем это автору надо - непонятно. Если-б рассказал зачем надо то мы-бы придумали более изящные решения.
...
Рейтинг: 0 / 0
09.07.2020, 17:46
    #39977843
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
mayton,
Да. Это если самому формировать куски.
Но боюсь он попросит помедленнее и байты головкой HDD читать.
...
Рейтинг: 0 / 0
09.07.2020, 17:47
    #39977845
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Неважно. Алгоритм - универсал.
...
Рейтинг: 0 / 0
09.07.2020, 17:53
    #39977847
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Сделать виртуалку с виртуальным диском, на который поставить ограничение по скорости.
...
Рейтинг: 0 / 0
09.07.2020, 18:02
    #39977851
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Aklin
Сделать виртуалку с виртуальным диском, на который поставить ограничение по скорости.

а какие менеджеры вируалок это поддерживают?
В VM Ware Free я такого не помню
...
Рейтинг: 0 / 0
09.07.2020, 18:27
    #39977857
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
qemu-system-x86_64 -help
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
...
-drive [file=file][,if=type][,bus=n][,unit=m][,media=d][,index=i]
...
       [[,bps=b]|[[,bps_rd=r][,bps_wr=w]]]
       [[,iops=i]|[[,iops_rd=r][,iops_wr=w]]]
       [[,bps_max=bm]|[[,bps_rd_max=rm][,bps_wr_max=wm]]]
       [[,iops_max=im]|[[,iops_rd_max=irm][,iops_wr_max=iwm]]]
       [[,iops_size=is]]
...
Рейтинг: 0 / 0
09.07.2020, 18:28
    #39977858
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Если надо просто понизить относительный приоритет дисковых операций то
(я погуглил только-что) вроде-бы есть утилитка ionice

https://linux.die.net/man/1/ionice
...
Рейтинг: 0 / 0
16.07.2020, 17:35
    #39980582
L.Otujktd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задать скорость чтения из файла
Abraziv,

Считать весь файл в память и организовать чтение из получившегося буфера с требуемой скоростью. Тс неплохо было бы постановку задачи увидеть, которую Вы пытаетесь решить ;)
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задать скорость чтения из файла / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]