Warning: mkdir(): No space left on device in /var/www/tgoop/post.php on line 37

Warning: file_put_contents(aCache/aDaily/post/csharpproglib/--): Failed to open stream: No such file or directory in /var/www/tgoop/post.php on line 50
Библиотека шарписта | C#, F#, .NET, ASP.NET@csharpproglib P.6389
CSHARPPROGLIB Telegram 6389
👀 Что такое Мультикаст-делегат

Когда вы работаете с делегатами в C#, есть одна особенность, которая может превратить обычный делегат в мощный инструмент. Речь о multicasting — возможности связать с одним делегатом сразу несколько методов.

Представьте, что у вас есть делегат. Обычно он указывает на один метод. Но в C# делегаты можно комбинировать:
public delegate void NotifyHandler(string message);

NotifyHandler handler = LogToConsole;
handler += SendEmail;
handler += SaveToDatabase;

handler("Пользователь авторизовался");


Когда вы вызовете handler, все три метода выполнятся последовательно. Именно эта возможность называется мультикаст.

Основной сценарий — реализация паттерна Observer без лишних сложностей. Вы подписываете несколько обработчиков на одно событие, и все они получают уведомление.

Важные детали

• Методы вызываются в том порядке, в котором вы их добавили. Но полагаться на конкретный порядок — плохая практика. Ваши обработчики должны быть независимыми.

• Если делегат возвращает значение, вы получите результат только от последнего метода в цепочке.

• Если один из методов выбросит исключение, остальные не выполнятся.

🐸 Библиотека шарписта

#sharp_view
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5🥱21👍1



tgoop.com/csharpproglib/6389
Create:
Last Update:

👀 Что такое Мультикаст-делегат

Когда вы работаете с делегатами в C#, есть одна особенность, которая может превратить обычный делегат в мощный инструмент. Речь о multicasting — возможности связать с одним делегатом сразу несколько методов.

Представьте, что у вас есть делегат. Обычно он указывает на один метод. Но в C# делегаты можно комбинировать:

public delegate void NotifyHandler(string message);

NotifyHandler handler = LogToConsole;
handler += SendEmail;
handler += SaveToDatabase;

handler("Пользователь авторизовался");


Когда вы вызовете handler, все три метода выполнятся последовательно. Именно эта возможность называется мультикаст.

Основной сценарий — реализация паттерна Observer без лишних сложностей. Вы подписываете несколько обработчиков на одно событие, и все они получают уведомление.

Важные детали

• Методы вызываются в том порядке, в котором вы их добавили. Но полагаться на конкретный порядок — плохая практика. Ваши обработчики должны быть независимыми.

• Если делегат возвращает значение, вы получите результат только от последнего метода в цепочке.

• Если один из методов выбросит исключение, остальные не выполнятся.

🐸 Библиотека шарписта

#sharp_view

BY Библиотека шарписта | C#, F#, .NET, ASP.NET




Share with your friend now:
tgoop.com/csharpproglib/6389

View MORE
Open in Telegram


Telegram News

Date: |

Each account can create up to 10 public channels Telegram Android app: Open the chats list, click the menu icon and select “New Channel.” Healing through screaming therapy Public channels are public to the internet, regardless of whether or not they are subscribed. A public channel is displayed in search results and has a short address (link). Telegram iOS app: In the “Chats” tab, click the new message icon in the right upper corner. Select “New Channel.”
from us


Telegram Библиотека шарписта | C#, F#, .NET, ASP.NET
FROM American