Почему фигурные скобки занимают время на коде C#?

Я использую Ants Performance Profiler 8.5, и когда я увидел время выполнения каждой строки моего кода, я заметил, что скобки также требуют времени.

Вот изображение, которое вы видите слева от фигурных скобок время в миллисекундах:

Иногда я получаю больше времени, например, 5 мс...

Это почему? Это сборка мусора?

1 ответ

Решение

Когда метод определен, набор параметров, находящихся в области действия метода, известен компилятору и называется maxstack, Это намекает на объем памяти, выделяемой для метода.

Это может быть источником дополнительного времени - выделения памяти CLR.

Добавление большего количества фигурных скобок на самом деле не добавляет больше параметров maxstack, Области применения весь метод. Scope - это скорее логическая группировка, чем реализуемая CLR для освобождения памяти.

С вашим вопросом о GC, я не верю, что это коренная причина проблемы. При необходимости GC запускается отдельным потоком. Это может быть GC, но я серьезно сомневаюсь в этом в вашем случае.

Другие вопросы по тегам