注意:我最感兴趣的是C#,Java和C ++,但由于这是更加学术性的问题,任何语言都可以。
我知道可以通过使用给定语言的适当方法(调用 free ,
Dispose 或通过删除对实例的所有引用)来解决此问题。
我的想法是创建一个实例,在构造函数中启动私有计时器。 当计时器结束时,它将调用某些实例方法并销毁变量。
我认为在C#中,如果实现了
IDisposable
,应该可以调用self上的 Dispose ,但这不会销毁实例。
在C ++中,我可以调用
析构函数
,但这会导致内存泄漏,而且这是非常糟糕的做法。
在Java中,我不知道如何做,因为将
this
赋值给final
字段是不可能的。
那么,是否有一种方法可以销毁自身实例?
this
上调用任何方法 - 这相当于在C#中调用对象的Dispose()方法。如果你的意思是想让对象被垃圾回收,你只需要清除所有对它的引用,并等待垃圾回收器释放它即可。 - Alex MDC