我注意到 Xamarin Intent
是 IDisposable
所以现在我想知道处置它的正确方法是什么。假设我创建并发送了它,在某些 Activity 中我收到了它并且...可以立即处理它吗?
我在问什么是正确的(作为指南)方法。
最佳答案
Xamarin.Android 中继承 Java.Lang.Object
的对象也遵循 IDisposable
模式,以确保 Mono GC 和 Android 之间正确的 1:1 映射GC(托管和本地 GC)。它们在两个 VM 中都有一个对象的表示,该对象具有一个桥接的概念,以便在何时收集它们时进行通信。
它们被称为 Peer Objects,通常由 GC 收集。
调用 Dispose()
是可选的,因为其中一个 GC 会处理它。但是,您可以通过调用 Dispose()
来切断允许 GC 更早收集它的引用来缩短对象的生命周期。
您可以在以下位置阅读更多相关信息:
Xamarin Android garbage collection algorithm
https://learn.microsoft.com/en-us/xamarin/android/internals/garbage-collection
关于android - 谁应该在什么时候处置 Intent ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50972295/