4

我今天在考虑以下情况:

我有两个班A和B。

A 暴露了一个事件 E。

B 使用弱事件处理程序“W”订阅此事件“E”。

过了一会儿,没有人持有任何对 B 的引用,但 GC 还没有启动。

虽然 B 尚未被 GC 收集,并且 A 引发了“E”,但是否会调用弱事件处理程序?

我想是的,但如果我没有遗漏什么,我会很好奇。

4

1 回答 1

2

是的,它会。WeakEventManager 将看到对象 B 引用是“活动的”(尚未收集)并将在那里引发事件。

于 2011-10-17T14:15:32.040 回答