Повышение производительности при использовании атрибутов в .NET

1. Есть ли какие-либо издержки производительности, вызванные использованием атрибутов? Думайте для класса как:

    public class MyClass
    {
       int Count {get;set;}
    }

где он имеет 10 атрибутов (атрибуты являются классами, где сами классы атрибутов намного больше, чем сам MyClass, например:

public class FirstAttribute : Attribute
{
   int A,B,C,D,E,F,G,H,I,J ... {get;set;}
}

2 .. Будут ли 10 из этих атрибутов каждый раз накладываться на память?MyClass создается? (FirstAttribute будучи в 10 раз большеMyClass который будет украшен 10 из них, поэтому сам фактический объект будет таким маленьким по сравнению с общим размером атрибутов, которые на нем украшены.) Это вызывает беспокойство?

3. Будет ли этот сценарий отличаться для структур (Структуры являются типами значений, а атрибуты - ссылочными типами)?

4. Где хранятся атрибуты в памяти относительно объекта, к которому они прикреплены? Как они связаны друг с другом?

5 .. Атрибуты инициализируются, как толькоMyClass инициализируется или когда вы используете отражение, чтобы получить их?

Ответы на вопрос(2)

Ваш ответ на вопрос