Sobes.tech
Junior — Middle

Bir multicast delegate nedir ve .NET delegate'leri bağlamında nasıl çalışır?

sobes.tech yapay zeka

AI'dan gelen yanıt

.NET'te multicast-delege, birkaç metoda referans tutabilen ve çağrıldığında bunları sırasıyla çağırabilen bir delegatördür.

Birden fazla metodu bir delegate'e eklediğinizde (+= operatörü ile), bir çağrı zinciri oluşturulur. Bu delegate çağrıldığında, zincirdeki tüm metodlar sırasıyla çağrılır.

Örnek:

public delegate void Notify(string message);

Notify notifyHandlers = null;

void Handler1(string msg) => Console.WriteLine("Handler1: " + msg);
void Handler2(string msg) => Console.WriteLine("Handler2: " + msg);

notifyHandlers += Handler1;
notifyHandlers += Handler2;

notifyHandlers("Merhaba");

Çıktı şu şekilde olur:

Handler1: Merhaba
Handler2: Merhaba

Bu şekilde, multicast-delegatlar olaylar ve geri çağırmaların uygulanmasında kullanışlıdır, çünkü birden fazla aboneye bildirim göndermek gerekebilir.