我正在编写一个可以加载一些用户模块的程序。我的主程序有一个在程序和用户模块之间共享的对象列表。现在的交易是可以从列表中删除/添加这些对象。它们是动态的。
在我自己的程序中,我可以确保对已删除项的所有引用都设置为null并清除所有侦听器。 (这是允许垃圾收集器顺便处理的正确方法吗?)。
问题是用户模块可以对删除的对象做任何他们想做的事情。他们可以添加listerners,保持对它的引用等。在这种情况下我如何释放内存?经过很长一段时间运行我的程序和许多添加/删除这些对象后,我可能会导致内存泄漏...
感谢您的进步。