0
我正在使用幾個SFSB實現相同接口的應用程序。刪除後的SFSB調用
要在運行時決定,whiche具體落實使用,我有以下工廠方法:
@SuppressWarnings("rawtypes")
@Inject @Any Instance<SFSBInterface> sfsbSource;
public <T> SFSBInterface<T> initBeanForm(Class<T> clazz, Class<? extends SFSBInterface<T>> sfsbClass, Annotation... qualifiers) {
SFSBInterface<T> sfsb = sfsbSource.select(sfsbClass, qualifiers).get();
return sfsb;
}
每一個具體的實施確實有@Remove批註的方法實現的。現在我有一個案例,我想要刪除此sfsb並獲取調用此方法的新實例。
我調用remove方法並刪除對這個對象的所有引用,但實例一直在內存中。當我現在要求這個類的一個實例時,我得到了同樣的實例,爲此我稱之爲刪除。
我的問題是:
- 難道我遇到的問題,如果我用這個例子,對此我叫 remove方法?
- 被刪除的實例保留在 內存中是否正常?
- 如何有效移除此實例?
- 我如何獲得 我班的真實新實例?
親切的問候 基督教
BTW:我使用JBoss 7.1.1和焊接