В настоящее время я работаю над приложением, которое анализирует огромные XML-файлы.Parallelize A Batch Application
Для каждого файла будут разные процессы, но все они будут проанализированы в одну объектную модель.
В настоящее время объекты, проанализированные из каждого XML-файла, войдут в одну коллекцию.
Эта коллекция также используется во время разбора, например. если подобный объект уже существует, он изменит свойство объекта, например, добавит счет.
Рассматривая график CPU, когда это приложение работает, ясно, что он использует часть процессора (только одно ядро за один раз на 100%), поэтому я предполагаю, что запуск его на параллельной основе поможет сократить время работы ,
Я новичок в параллельном программировании, поэтому любая помощь приветствуется.
Когда вы говорите, что эти XML-файлы будут проанализированы в одну объектную модель, вы имеете в виду, что они будут загружены в память? Если да, то что вы собираетесь делать с этой объектной моделью? Редко полезно загружать что-то в память, если это не выполнение некоторых операций/преобразований на нем, а затем сохранение в другом месте. –
@ darin После разбора будут дополнительные процессы. Но это не в контексте этого вопроса. –