Параметры для динамического вызова методов в C#
Я видел довольно много вопросов, связанных с тем, как я могу вызвать метод, такой и тот. То, что я не нашел, - это список различных опций того, как вызывать метод через отражение или любым другим способом в csharp.
Может кто-нибудь подробно объяснить различные способы динамического вызова метода в csharp? От размышления к излучению ИЛ и любых других промежуточных путей. Я хотел бы знать все различные пути от самых дорогих до наименее дорогих с точки зрения ресурсов.
1 ответ
Решение
Чтобы начать, вот несколько способов вызова метода в.NET, о котором я могу подумать:
- Вызов
- Callvirt
- делегат
- DynamicMethod
- MethodInfo.Invoke
- Type.InvokeMember
- TypeDescriptor
- Reflection.Emit
- Деревья выражения
Я помню какую-то статью, сравнивающую скорость большинства из них, но я не могу найти ее в данный момент.
Быстрый поиск Google пришел с этими ссылками: [Ссылка] [Ссылка] [Ссылка] [Ссылка] [Ссылка]