1

Тема: Делегати

Доброго ранку) Поясніть, будь ласка, доступно, для чого використовуються делегати, multi-cast делегат та його асинхронний виклик. Буду дуже вдячна :)

2

Re: Делегати

А коли у вас іспит?

3

Re: Делегати

koala написав:

А коли у вас іспит?

В неділю.

4

Re: Делегати

Делегати в C# подібні до показчика на функцію в C або C++. Використання делегату дозволяє програмісту інкапсулювати посилання на метод всередині об'єкту, що представляє делегат. Після цього, об'єкт, що представляє делегат, може бути переданий в частину коду, в котрій може викликатись метод, котрий міститься в об'єкті, котрим представлений делегат, при цьому код може не знати, який саме метод буде викликаний.

multi-cast делегат може містити посилання на більш ніж один метод, але сигнатура таких методів повинна бути однаковою.
Асинхронний виклик делегату відбувається через виклик його методу BeginInvoke замість Invoke. Даний метод буде викликати кожен метод, посилання на котрий міститься в multi-cast делегаті асинхронно, але кожен метод буде викликаний послідовно, а не паралельно. Опісля ви маєте викликати метод EndInvoke в колбеці, котрий ви передаєте в BeginInvoke.
Більше інфи туто. https://docs.microsoft.com/en-us/dotnet … chronously

Подякували: bee, Fox, leofun01, ostap34PHP4