Size: a a a

2020 July 13

П

Павел in Qt
ProIt same
Привет всем! Кто нибудь в курсе как лучше преобразовывать большой массив строк в числа?
многопоточно, как угодно: набираем буфер N результатов(например 10000 результатов хватит выше крыши пожалуй), пока не заполнится - не сбрасываем, заполнился буффер - сбрасываем, далее опять выбираем 10000 исходных данных отправляя их в воркер пулы или вроде того. В дополнении можно пойти ещё на разбивку массива на N блоков: выбираем байт например номер 100000, ищем вправо запятую, пляшем, если блок оказался менее 100000 то не обрабатываем его блочно.
источник

AS

Anatoly Shirokov in Qt
ProIt same
Привет всем! Кто нибудь в курсе как лучше преобразовывать большой массив строк в числа?
Читай в контейнер в рабочем потоке последовательно число за числом, когда все будет готово передавай в ui поток контейнер
источник

Ps

ProIt same in Qt
Павел
многопоточно, как угодно: набираем буфер N результатов(например 10000 результатов хватит выше крыши пожалуй), пока не заполнится - не сбрасываем, заполнился буффер - сбрасываем, далее опять выбираем 10000 исходных данных отправляя их в воркер пулы или вроде того. В дополнении можно пойти ещё на разбивку массива на N блоков: выбираем байт например номер 100000, ищем вправо запятую, пляшем, если блок оказался менее 100000 то не обрабатываем его блочно.
я сейчас split(',') делаю а потом в цикле number, это на много дольше? Я просто не понимаю о чём речь наверное,
источник

AS

Anatoly Shirokov in Qt
ProIt same
я сейчас split(',') делаю а потом в цикле number, это на много дольше? Я просто не понимаю о чём речь наверное,
Нормально это, но такие операции лучше выносить в отдельный поток, чтобы не фризить ui
источник

Ps

ProIt same in Qt
Anatoly Shirokov
Нормально это, но такие операции лучше выносить в отдельный поток, чтобы не фризить ui
я не понимаю почему на пайтоне, это делается в считанные секунды, а тут целую минуту ждать приходится )
источник

AS

Anatoly Shirokov in Qt
ProIt same
я не понимаю почему на пайтоне, это делается в считанные секунды, а тут целую минуту ждать приходится )
В релизе, в дебаге?
источник

Ps

ProIt same in Qt
Anatoly Shirokov
В релизе, в дебаге?
в дебаге пробовал
источник

AS

Anatoly Shirokov in Qt
ProIt same
в дебаге пробовал
В релизе проверьте
источник

Ps

ProIt same in Qt
Anatoly Shirokov
В релизе проверьте
хо ёлы палы, мгновенно, не думал что на столько разница будет )
источник

МВ

Макс Воробьев... in Qt
а какого-нибудь split_view нет?)
источник

МВ

Макс Воробьев... in Qt
что-бы не создавать лишний раз строки
источник

AS

Anatoly Shirokov in Qt
да можно банально из std::ifstream читать непосредственно число за числом и помещать в контейнер
источник

Ps

ProIt same in Qt
ну в принципе, такой задачи нет, в релизе норм конвертица, оставлю так
источник

Ps

ProIt same in Qt
всё таки сделал в потоке при чтении, сразу со всеми преобразованиями даже дополнительными и при отладке. Получилось вполне в разы быстрее :)
источник

AB

Alex B. in Qt
Может кто подскажет, если есть listview и модель, можно задать для listVew отображение только первых n элементов модели?
источник

МВ

Макс Воробьев... in Qt
Alex B.
Может кто подскажет, если есть listview и модель, можно задать для listVew отображение только первых n элементов модели?
есть count. он вродь не помечен как readonly
источник

МВ

Макс Воробьев... in Qt
и есть count у https://doc.qt.io/qt-5/qml-qtqml-models-delegatemodel.html#count-prop . вообще без доки
источник

МВ

Макс Воробьев... in Qt
и всегда есть возможность сделать прокси модель
источник

МВ

Макс Воробьев... in Qt
которая принимает основною и в count возвращает кол-во необходимых элементов
источник

AB

Alex B. in Qt
Ну да, ок, спасибо
источник