Описание тега multicastdelegate

Многоадресный делегат - это делегат, который указывает на несколько методов. Многоадресное делегирование - это механизм, который обеспечивает функциональность для выполнения более чем одного метода: существует список поддерживаемых внутри делегатов, а когда вызывается многоадресный делегат, выполняется список делегатов.
1 ответ

Castle Windsor Удобства, в которых Нэнси Виндзор не работает

У меня странная проблема при попытке обновить Nancy 0.7 до 0.12. Ранее я регистрировал средство для ведения журналов для всех моих служб в моем загрузчике: protected override void ConfigureApplicationContainer(IWindsorContainer existingContainer) { …
1 ответ

Почему типы делегатов являются производными от класса MulticastDelegate, почему они не являются производными от класса Delegate?

У меня есть очень простой вопрос относительно типов делегатов. Я сравнил членов классов Delegate и MulticastDelegate в браузере объектов и не смог найти никаких новых дополнительных членов, присутствующих в MulticastDelegate. Я также заметил, что кл…
28 янв '11 в 21:04
6 ответов

Простой делегат (делегат) против многоадресных делегатов

Я просмотрел много статей, но мне все еще не ясно, в чем разница между обычными делегатами, которых мы обычно создаем, и многоадресными делегатами. public delegate void MyMethodHandler(object sender); MyMethodHandler handler = new MyMethodHandler(Me…
03 фев '10 в 13:38
3 ответа

Полная очистка словаря многоадресных делегатов

У меня есть словарь делегатов многоадресной рассылки, где ключ - это определенный тип сообщения, а значения - делегаты многоадресной передачи, то есть обработчики сообщений. Когда я хочу очистить этот словарь, я хочу убедиться, что все делегаты не с…
17 янв '17 в 12:33
0 ответов

Как создавать и запускать события на объектах, а не элементах

Я пишу небольшую библиотеку, которая по существу опрашивает сайт на предмет данных, а затем должна уведомлять потребителя, когда он совпадает. В C# я бы использовал события, которые на самом деле являются многоадресными делегатами. Я уже писал свой …
22 июн '16 в 06:53
1 ответ

Разница между новым KeyEventHandler(Form1_KeyDown) и Form1_KeyDown

В приложении Windows Form вы можете зарегистрировать обработчики событий следующим образом: this.KeyDown += new KeyEventHandler(Form1_KeyDown); и позже отмените регистрацию того же самого обработчика как это: this.KeyDown -= new KeyEventHandler(Form…
26 апр '11 в 23:53
0 ответов

Разница между делегатом и MulticastDelegate?

Возможный дубликат: Простой делегат (делегат) против многоадресных делегатов Мне было интересно, какая разница между Delegate класс и MulticastDelegate учебный класс? Делегаты в C# всегда Multicast, верно? Потому что делегат может содержать нескольк…
21 июл '11 в 06:47
3 ответа

Использование MulticastDelegate в качестве параметра, избегая DynamicInvoke

У меня есть MulticastDelegate который может ссылаться на одного из (унаследованных) делегатов с одинаковой подписью. Например: public delegate void ObjectCreated(object sender, EventArgs args); public delegate void ObjectDeleted(object sender, Event…
20 янв '11 в 19:46
0 ответов

Утечка памяти при использовании многоадресного делегата с mvvm-c?

Я не реализовывал шаблон многоадресного делегата ни в одном из своих проектов (до сих пор), поэтому я довольно новичок в этом. Я использую архитектуру MVVM-C и получаю утечку памяти всякий раз, когда пытаюсь вызвать метод делегата из моей модели при…
2 ответа

Является ли `System.MulticastDelegate` потокобезопасным?

Я ищу кого-то, кто мог бы знать больше об этом, моя интуиция говорит мне, что ответ "нет, это не потокобезопасно", но я хочу быть уверенным. Чтобы проиллюстрировать мой вопрос, я предоставил некоторый контекст с этим классом public class MyContext {…
1 ответ

Блок многоадресной рассылки: как обобщить

Цель У меня есть класс с различными свойствами, которые можно использовать для подключения блока для получения определенных событий. @interface SomeClass @property (copy, nonatomic) void (^handler)(int arg1, int arg2); @end В клиентском коде я хотел…
1 ответ

Многоадресные делегаты реализуют шаблон Builder?

Является ли использование многоадресных делегатов подходящим способом реализации шаблона проектирования Builder? Причина, по которой я спрашиваю, заключается в том, что моя концепция / понимание шаблона Builder - это набор методов, которые можно ком…
3 ответа

Как обработать исключение в многоадресном делегате в C#?

Мне дали код, который я вызываю через многоадресный делегат. Я хотел бы знать, как я могу догнать и обработать любое возникшее там исключение, которое пока не удалось. Я не могу изменить данный код. Я искал вокруг и обнаружил необходимость вызова Ge…
21 апр '11 в 06:59
2 ответа

Multicast Delegate Ambigous

У меня есть код ниже StringOperations sumString, reverseString, lowerString, upperString, multicastString; sumString = new StringOperations(sum); reverseString = new StringOperations(reverse); lowerString = new StringOperations(lower); upperString =…
15 авг '15 в 18:29
0 ответов

Добавление многоадресного делегата в программу VB.NET

Для задания я должен был написать программу, которая использовала делегатов для выполнения всех четырех основных математических функций одновременно. Что я и сделал. Вот код из этого. Module Module1 Public Delegate Sub math(ByVal A As Integer, ByVal…
3 ответа

Многоадресные делегаты должны иметь тип возврата void. Зачем?

Многоадресные делегаты должны иметь возвращаемый тип void. В противном случае будет выдано исключение. Я хочу знать, в чем причина этого, что, если несколько методов могут иметь тот же тип возврата, что и делегат?
21 сен '12 в 12:37
2 ответа

Использование многоадресной рассылки в C# многоадресных делегатах

Когда полезно иметь многоадресных делегатов над однокамерными делегатами? Я часто использую делегатов, в основном в сочетании с лямбдами C#, но я никогда не чувствовал необходимости использовать многоадресный аспект делегатов C#, то есть я никогда н…
09 июн '11 в 18:33
3 ответа

Исключение MulticastDelegate вызывается только в производственной среде

У меня очень странная проблема, возникающая только в производственной среде. Исключение имеет сообщение Msgstr "Делегировать метод экземпляра не может иметь значение" this "". Метод, в котором генерируется исключение, очень прост и работает в течени…
0 ответов

Как правильно вызывать несколько методов из одного события?

Я вызываю несколько методов коррекции цвета из события щелчка PictureBox. Проблема в том, что иногда метод будет пропущен. Иногда метод запускается дважды. Поэтому я, возможно, не использую наилучший способ вызова своих методов. Код следует: РЕДАКТИ…
15 апр '15 в 07:25
1 ответ

Код скомпилирован и успешно выполнен, но ожидаемый вывод - "Sub" не печатается. В чем ошибка в этом коде?

В чем проблема в этом коде? namespace ConsoleApplication1 { public delegate void del(); class Program { static void Main(string[] args) { del d = new del(add); d += sub; } public static void add() { Console.WriteLine("add"); } public static void sub…
28 фев '18 в 13:00