请在下面找到我创建并打算用作自过期对象的类。
public class SelfExpiringObject {
private boolean expired;
// other properties
public void setValidity(final int seconds) {
new Timer().schedule(new TimerTask() {
public void run() {
expired = true;
}
}, TimeUnit.SECONDS.toMillis(seconds));
}
public boolean isExpired() {
return expired;
}
}
任何人都可以提出更好的选择吗?
想在规则引擎中使用它来处理事件。其中一种情况是在收到事件时,将它们放入会话中(使用具有自过期属性的对象)。我希望他们仅根据规则中设置的有效性参加会议。一旦它们过期,它们将从会话中删除。