我有一个社交网络,我可以在帖子上发表评论。我已经使用ReactionController实现了这一点,该ReactionController处理一个帖子的API调用,该帖子有一个指示API调用已完成的事件。
我的代码是这样的(在我的"时间轴"控制器,当UI要求我做出反应时):
public void PlaceReaction(string reaction) {
var reactionController = new ReactionController(post);
reactionController.DishUpdatedEvent += (updatedPost) => {
// Notify the UI
UIThreadDispatcher.Invoke(() => SinglePostUpdatedEvent?.Invoke(updatedPost));
};
reactionController.PlaceReaction(reaction);
}
并在我的ReactionController中:
// Saved to API
UIThreadDispatcher.Invoke(() => PostUpdatedEvent?.Invoke(_post));
我担心我自由使用事件可能会导致ReactionController保留在内存中,但我只希望它在调用期间保留在内存中,直到事件被触发。这会像我想要的那样,还是我有内存泄漏?