В Visual Studio 2012 моя программа тратит около 35% своего времени на функцию лямбда, но когда я пытаюсь профилировать свой код (ANALYZE -> Start Performance Analysis), он просто говорит, что он тратит 35% времени выполнения внутри «заполнить» функтор (объект лямбда).Как проработать производительность лямбда-функции?
Невозможно отобразить тело лямбда-объекта, и я не вижу, что он находится внутри лямбды, который занимает все это время.
Я сознательно не проводка самой лямбды, потому что я хочу знать как найти эту информацию в рамках программы Visual Studio, а не проблемы в моем коде (мой код, конечно, всегда совершен, и это просто академическое занятие).
Я использую Visual Studio Ultimate 2012
Скопируйте код из лямбда в метод и вместо этого вызовите этот метод. – dasblinkenlight
Я просто думал о чем-то вроде предложения dasblinkenlight - функция/метод с именем, вероятно, более «доступна» для инструментов отладки/профилирования. –
Да, это сработает, но это не идеально, потому что вызов функции медленнее, чем оценка статической лямбда - по крайней мере, на моей системе в соответствии с профилировщиком - так что это не обязательно точное сравнение. Но если это единственный вариант, я думаю, мне придется это сделать. Приветствия. – arman