Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Algorithm Tuning

Boost , Boost.Regex 5.1.2 , Configuration

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Следующий вариант применяется только в том случае, если установлен BOOST_REGEX_RECURSIVE.

макро

описание

BOOST_REGEX_HAS_MS_STACK_GUARD

Повышает скорость. Regex, что стиль Microsoft __try - __, за исключением блоков, поддерживается и может быть использован для безопасной ловушки переполнения стека.

Следующие параметры применяются только в том случае, если установлен BOOST_REGEX_NON_RECURSIVE.

макро

описание

BOOST_REGEX_BLOCKSIZE

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

BOOST_REGEX_MAX_BLOCKS

Повышает скорость. Сколько блоков размера BOOST_REGEX_BLOCKSIZE разрешается использовать. Если это значение превышено, то увеличивается. Regex перестанет пытаться найти совпадение и бросит std::runtime_error. Не забудьте настроить это значение до 1024, если вы сильно измените BOOST_REGEX_BLOCKSIZE.

BOOST_REGEX_MAX_CACHE_BLOCKS

Повышает скорость. Регекс сколько блоков памяти хранить во внутреннем кэше - блоки памяти берутся из этого кэша, а не путем вызова::оператор новый. Вообще говоря, это может быть на порядок быстрее, чем вызов ::оператор новый каждый раз, когда блок памяти требуется, но имеет обратную сторону, что увеличить. Regex может в конечном итоге кэшировать большой кусок памяти (по умолчанию до 16 блоков каждого размера BOOST_REGEX_BLOCKSIZE). Если память плотная, попробуйте определить это до 0 (отключает все кэширование), или если это слишком медленно, тогда значение 1 или 2 может быть достаточным. С другой стороны, в больших многопроцессорных многопоточных системах вы можете обнаружить, что более высокое значение находится в порядке.


PrevUpHomeNext

Статья Algorithm Tuning раздела Boost.Regex 5.1.2 Configuration может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: Configuration ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 02:22:41/0.0035080909729004/0