Текстовое поле подсветки синтаксиса для Winforms, ASP.NET, WPF

Файловая система может интерпретироваться как иерархическое хранилище значений ключей, и ее часто используют в программах Unix. Однако создание файлов может быть довольно дорогостоящим, в зависимости от используемой ОС и файловой системы. В частности, различные файловые системы значительно различаются в зависимости от масштаба времени доступа с количеством файлов в одном каталоге. Например. см. Производительность NTFS и большие объемы файлов и каталогов и Как вы справляетесь с большим количеством маленьких файлов? : «Производительность NTFS сильно ухудшается после 10000 файлов в каталоге».

Таким образом, вы можете увидеть значительные преимущества, перейдя от псевдобазы данных, использующей миллионы небольших файлов, к «реальной» базе данных, такой как SQLite, которая хранит данные в одном файле, что делает доступ к отдельным записям более дешевым.

С другой стороны, 2 миллиона записей - это не так много, что говорит о том, что издержки файловой системы не могут быть для вас ограничивающим фактором. Попробуйте запустить программное обеспечение с тестовой рабочей нагрузкой и использовать профилировщик или другие средства отладки, чтобы узнать, на что тратится время. Это действительно open(), что занимает так много времени? Или есть другая дорогостоящая обработка, которая может быть оптимизирована? Если есть этап предварительной обработки, который можно распараллелить, он один может значительно сократить время обработки.

12
задан marc_s 30 August 2012 в 16:13
поделиться

2 ответа

Я - с Вами marc: я хотел бы видеть расширяемую платформу подсветки синтаксиса, которая могла генерировать маркируемый объект "документа", который мог затем быть отображен через средства управления для каждой платформы дисплея. Таким образом, синтаксический анализатор/токенизатор мог быть записан однажды!

Лучшее, которое, как я могу сказать, является, что этот поток предполагает, что ActiProSoftware работает над управлением WPF для их маркера синтаксиса.

6
ответ дан 2 December 2019 в 22:06
поделиться

Все те платформы полностью отличаются, и у каждого есть их собственные методы дисплея рендеринга. Таким образом, не будет никакого универсального управления, которое делает все. Каждая платформа будет иметь отдельный контроль

Однако можно реализовать веб-элемент управления и использовать его на странице. Затем объект браузера в winforms или wpf может использовать адрес страницы для отображения его

2
ответ дан 2 December 2019 в 22:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: