【问题标题】:Java: remove collection elements if they are inactive for specific timeoutJava:如果集合元素在特定超时内不活动,则删除它们
【发布时间】:2014-02-14 14:50:46
【问题描述】:

我有一个网络应用程序。我将用户会话存储在集合中。我还希望能够更新用户会话。所以我需要在一段时间内存储不活动的用户连接,如果他们不活动大约一天,我应该删除它们。喜欢:expirationList.add(userSesion, timeout);,但每次调用 userSesion 的方法时,我都必须重置超时。

问题:是否有此类集合的任何实现?

【问题讨论】:

标签: java jakarta-ee collections timeout


【解决方案1】:

我通过在对象上存储时间戳实现了类似的功能。每次使用对象时更新时间戳。当您遍历可能被删除的项目的集合或队列时,请先检查时间戳。

【讨论】:

【解决方案2】:

您可以使用整数作为自上次活动以来的时间的 Map。然后,您可以获得整数超过 9000 或其他任何值的所有用户。

【讨论】:

  • 是的,但在这种情况下,我应该自己管理它。如果我能把责任转移给别人就更好了。
猜你喜欢
  • 2020-06-17
  • 1970-01-01
  • 2017-04-18
  • 1970-01-01
  • 2019-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多