Подтвердить что ты не робот

Что делает std:: _ lockit?

Я проверил производительность проекта С++, и результаты мне не так понятны.
std::_lockit::int() имеет более 20% эксклюзивных образцов. Что он делает и как мне избежать чрезмерного использования? У меня есть много вещей, созданных с помощью std::vector, поэтому есть надежда, что они связаны.

4b9b3361

Ответ 1

_Lockit обычно используется в реализации Microsoft STL для отладки итераторов. В производственных средах это может стать причиной значительных узких мест в производительности при повторении контейнеров с большим количеством элементов.

Отладка итераторов может быть отключена, определяя макросы _HAS_ITERATOR_DEBUGGING и _SECURE_SCL как 0 в вашем коде или свойства проекта Visual Studio.

Связано: Ненужная блокировка в STL? (Visual С++ Express)