加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java中的C析构函数是否相同?

发布时间:2020-12-15 03:15:58 所属栏目:Java 来源:网络整理
导读:参见英文答案 Is there a destructor for Java?20个 最简单的形式,以下是设计: class Session { Timer t = new Timer(); // ...}; 每当分配Session时,我会在其中启动一个计时器;计时器将在10-20分钟后过期.现在,假设Session在定时器到期之前被销毁;那么这是
参见英文答案 > Is there a destructor for Java?20个
最简单的形式,以下是设计:
class Session {
  Timer t = new Timer();
  // ...
};

每当分配Session时,我会在其中启动一个计时器;计时器将在10-20分钟后过期.现在,假设Session在定时器到期之前被销毁;那么这是我必须停止计时器的场景.我不知道是否有任何最后一个方法在Session被销毁时总是被调用.

在Java中是否存在某种类似的C析构函数,这有助于我在Session被销毁时取消()计时器? (无需等待GC)

编辑:请不要为C代替.我想要一些相同的东西.会话是一个电话会话,当与其连接的所有用户都断开连接时会被破坏.现在,没有最后调用的Session方法,也没有任何异常.

解决方法

不,Java中没有这样的东西.最接近的是写一个终结器,但不能保证它会运行.

会议如何被破坏?如果有一个调用的方法,请务必将代码放在那里.

你如何创建一个会话?如果您在try / catch块中执行此操作,则可以清除finally块中的所有内容.

我会编写一个close()方法来处理它并在finally块中调用它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读