gpt4 book ai didi

java - object.recycle 的问题以及何时执行

转载 作者:行者123 更新时间:2023-12-01 07:05:51 25 4
gpt4 key购买 nike

我在回收 Notes 对象方面相当严格,但我遇到了无法回收对象的情况,因为它是从方法传递回调用代码的。所以在类里面我有这样的代码:

public Database getAppDB() {
Database appDB = null;
try{
Session s = ExtLibUtil.getCurrentSession();
serverName = s.createName(s.getCurrentDatabase().getServer()).getCommon();
appDB = s.getDbDirectory(serverName).openDatabaseByReplicaID(this.getAppRepID());
return appDB;
}catch (NotesException e){
System.out.println(e.toString());
return appDB;
}finally{
Utils.recycleObjects(s);
}

}

它打开一个数据库,然后将appDB传递回调用程序。显然,如果我在调用程序中实例化数据库,我将需要回收它,但在此类方法中我无法回收它,因为它正在被传回。我是不是用这个制造了一个定时炸弹?如果是这样,有办法解决这个问题吗?在 session 的生命周期中,该方法可能会被调用数百次。

最佳答案

简单地说:调用您的方法的代码负责回收数据库对象。此规则也适用于 SSJS 代码!

您也不能回收 session ,因为它会回收从其派生的所有对象。

关于java - object.recycle 的问题以及何时执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24783697/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com