如何正确使用CommunityToolkit的StrongReferenceMessenger

问题描述 投票:0回答:1

所以我正在对 .NET MAUI 中的 Messenger 进行一些研究,并且我已经使用 WeakReferenceMessenger 一段时间了,我进入了文档并偶然发现了一个有趣的点

WeakReferenceMessenger 和 StrongReferenceMessenger:前者在内部使用弱引用,为收件人提供自动内存管理,而后者使用强引用,并要求开发人员在不再需要收件人时手动取消订阅(有关如何取消注册消息处理程序的更多详细信息,请参阅如下所示),但作为交换,可以提供更好的性能和更少的内存使用量。

有趣的是 StrongReferenceMessenger

has better performance and far less memory usage

 这让我思考为什么不自己尝试使用它来监控差异,有趣的是,即使文档似乎提到有 SRM 示例,但实际上没有,我尝试在 google 上搜索 SRM 示例,但没有其中之一,然后我决定检查 MAUI 和 CommunityToolkit 的 Github,但我再次什么也没发现!!!

这里有人知道如何使用 SRM 吗?

c# xamarin maui maui-community-toolkit
1个回答
0
投票
不确定你在问什么。 WeakReferenceMessenger 和 StrongReferenceMessenger 都实现了 IMessenger 接口。所以你应该能够互换使用它们。对于后者,您只需手动取消注册所有收件人

© www.soinside.com 2019 - 2024. All rights reserved.