У меня есть приложение Delphi, которое создает блок данных, которые я сейчас записываю в файловую систему в виде xml. Затем эти данные считываются приложением C# .Net для дальнейшей обработки.
Проблема в том, что граф объектов большой, а результирующий XML-файл имеет размер более 2 ГБ. Запись XML-файла занимает относительно много времени, а также его чтение.
Вместо того, чтобы писать в файловую систему, как я могу перенести данные в оперативную память, где это будет намного быстрее?
У меня есть исходный код и компиляторы для обоих приложений. Я использую .Net версии 4.0 и VS2010 для одного приложения. Другой я использую Delphi 5 (у меня есть доступ к более поздним версиям, но я не уверен, поможет ли миграция).
ОБНОВЛЕНИЕ: Спасибо за все предложения, это много для обработки. Я отправлю обратно после дальнейшего рассмотрения.
Application.ProcessMessages
бесполезно. Я бы порекомендовал найти любые такие звонки и удалить их. Если процесс медленный, а пользовательский интерфейс необходимо поддерживать в рабочем состоянии, поместите долго выполняющийся код в фоновый поток, как и задумано природой. - person David Heffernan   schedule 04.10.2012