Как extern работает в C #?

Всякий раз, когда я достаточно глубоко смотрю в отражатель, я натыкаюсь на extern методы без источника. Я прочитал документацию по msdn по адресу http: // msdn. microsoft.com/en-us/library/e59b22c5(v=vs.80).aspx. Из этой статьи я понял, что необходимо внедрить методы с модификатором extern . Я интерпретировал это как то, что он работает как абстрактный фабричный шаблон. Я также заметил, что никогда не видел нестатического внешнего метода. Является ли статическое объявление требованием (я понял, какой в ​​этом смысл)? Я все еще гадаю и не знаю, как это работает. Мне кажется, что компилятор должен распознавать определенные атрибуты, которые смягчают обработку, но я не знаю, что это за атрибуты, кроме тех, с которыми я сталкивался, например MethodImplAttribute и DllImportAttribute из пример MSDN. Как можно использовать атрибут extern ? Он сказал, что во многих случаях это может повысить производительность. Кроме того, как мне изучить источник extern методов, таких как Object.InternalGetEquals () ?

59
задан smartcaveman 24 February 2011 в 21:30
поделиться