Объяснение поведения кэширования Aspose.CAD
Как Aspose.CAD кэширует данные
Все кэширование, выполняемое Aspose.CAD, полностью автоматическое, без необходимости или возможности ввода со стороны пользователя. Существует, по сути, три вида кэширования, все они связаны с шрифтами.
Кэш имен шрифтов
Кэш имен шрифтов используется для ускорения запуска за счет предварительной обработки всех найденных файлов шрифтов и компиляции списка имен шрифтов, присутствующих в этих файлах, так как один файл шрифта может содержать более одного шрифта. Он хранится в виде временного файла и обычно занимает десятки килобайт для большинства систем.
Кэш данных глифов шрифтов
Кэш в памяти всех глифов, которые использовались в течение времени работы приложения, для уменьшения повторного чтения фактических файлов шрифтов на диске во время последующих экспортов. Таким образом, это может привести к постоянно увеличивающемуся потреблению памяти, если последующие экспорты будут состоять из файлов, которые ссылаются на новые шрифты и/или содержат символы, которые ранее не встречались. Однако на практике, даже на всей тестовой платформе Aspose.CAD, с тысячами файлов, включая файлы на разных языках, его потребление памяти составляет около 200 мегабайт, что не является значительным для современной системы.
Кэш резервных шрифтов по символам
Кэш в памяти, который хранит шрифты, содержащие данный символ для всех символов Unicode, чтобы упростить выбор замены шрифта в случае, если шрифт, предоставленный текстовым объектом в рисунке, не содержит символа в содержимом текста этого объекта. Он создается при первой операции экспорта в течение времени работы приложения и существует до завершения приложения. На наших относительно скромных тестовых машинах с большими коллекциями шрифтов, используемыми в тестовых наборах, создание кэша занимает около 30 секунд и занимает 70 мегабайт. Как только кэш создан, он больше не требует времени и не увеличивается.