Skip to content

Repository files navigation

SimpleMessenger

A simple, lightweight event messenger that uses a ConditionalWeakTable internally. Handlers are automatically removed when the subscriber is garbage-collected.

NuGet: https://www.nuget.org/packages/Bitbound.SimpleMessenger

Usage

// Program.csusingBitbound.SimpleMessenger;// ...services.AddSingleton<IMessenger>(WeakReferenceMessenger.Default);
// MyService.cspublicclassMyService:IMyService{publicMyService(IMessengermessenger){// Registers a handler under the default channel.// The handler will be removed automatically if// this MyService instance is garbage-collected.messenger.Register<SomeMessageType>(this,MyHandler);}privateasyncTaskMyHandler(objectsubscriber,SomeMessageTypemessage){// Handle the message.}}

About

A simple, lightweight event messenger where handlers are automatically removed when subscriber is GCed.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages