|
235 / 31 / 11
Регистрация: 04.06.2010
Сообщений: 293
|
||||||
Как оптимизировать этот кусок кода ? (чтение из файла)07.08.2014, 22:37. Показов 2505. Ответов 28
Метки нет (Все метки)
Добрый вечер, уважаемые форумчане !
Имеются 50 тыс. файлов, общим размером ~ 30ГБ. Имеется кусок кода, который считывает каждый файл в поток, а затем присваивает строковой переменной первые 77 строк из каждого файла.
В общем, 30 ГБ файлов он считывает примерно за 18 минут. Прошу помощи у экспертов, как можно оптимизировать считывание из файла ? Читал про отображение файла в память (MemoryMappedFile), но не нашёл понятных мне примеров. Заранее спасибо за оказанную помощь !
0
|
||||||
| 07.08.2014, 22:37 | |
|
Ответы с готовыми решениями:
28
Что делает этот кусок кода? Что значит этот кусок кода? |
|
147 / 73 / 17
Регистрация: 31.05.2014
Сообщений: 215
|
||||||
| 08.08.2014, 02:57 | ||||||
|
Бедел, лучше вот так.
Получаете первые 77 строк из каждого и потом обрабатываете в соответствии со своим алгоритмом каждые элемент массива xmls.
1
|
||||||
|
235 / 31 / 11
Регистрация: 04.06.2010
Сообщений: 293
|
|
| 08.08.2014, 03:00 [ТС] | |
|
0
|
|
|
147 / 73 / 17
Регистрация: 31.05.2014
Сообщений: 215
|
||||||
| 08.08.2014, 03:03 | ||||||
|
или вот так(что быстрее будет не особо понятно)
Бедел, можно и без нее обойтись. Это если захочется вручную все проверить точками останова, пока до 45000 элемента массива промотаешь...
1
|
||||||
|
235 / 31 / 11
Регистрация: 04.06.2010
Сообщений: 293
|
|
| 08.08.2014, 03:03 [ТС] | |
|
rutelun, честно говоря, то уже немного подустал, да и время позднее. Спасибо за конструктивный диалог и оказанную помощь. Завтра обязательно протестируем все варианты и отпишусь сюда)
0
|
|
|
1057 / 864 / 195
Регистрация: 31.03.2010
Сообщений: 2,521
|
||||||
| 08.08.2014, 13:08 | ||||||
|
rutelun, будет конфликт доступа к xmls
0
|
||||||
|
147 / 73 / 17
Регистрация: 31.05.2014
Сообщений: 215
|
||||||
| 08.08.2014, 13:21 | ||||||
|
Learx, хм, странно. У меня NET 4.5.1 и вот такой код хорошо работает
0
|
||||||
|
235 / 31 / 11
Регистрация: 04.06.2010
Сообщений: 293
|
||||||
| 08.08.2014, 17:04 [ТС] | ||||||
|
rutelun, когда использую 30 параллельных потоков, то xml у меня заполняется хаотично, и далее при парсинге нарушается порядок. Когда p.MaxDegreeOfParallelism = 1, то всё нормально.
В общем, пока самый быстрый метод, который парсит 50 тыс. файлов за 16 минут, вот этот:
rutelun, ладно, я думаю, это неплохой результат. На практике планируется парсить от 100 до 50 000 файлов. Спасибо всем, кто откликнулся на призыв о помощи)
0
|
||||||
|
147 / 73 / 17
Регистрация: 31.05.2014
Сообщений: 215
|
||||||
| 08.08.2014, 19:21 | ||||||
|
Бедел, очень странно. Попробуйте такой код.Я делаю вот так - все нормально.
Только количество потоков увеличьте до 300
1
|
||||||
|
235 / 31 / 11
Регистрация: 04.06.2010
Сообщений: 293
|
|
| 08.08.2014, 20:11 [ТС] | |
|
rutelun, я уже сделал релиз и отправил программу)
Как-нибудь на днях для себя просто попробую оптимизировать по предложенному Вами варианту. Спасибо за помощь)
0
|
|
| 08.08.2014, 20:11 | |
|
Что делает этот кусок кода? обьясните пожалуйста что делает этот кусок кода с++ Пожалуйста поясните, что делает этот кусок кода .Invoke(this, new EventArgs(); Как в начало файла вписать кусок кода,но не считывая файл Как понять этот кусок программы? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|