7.4. 通知和事件


强和弱计数器都支持侦听器接收其更新事件。侦听器必须实施 CounterListener,并可以使用以下方法注册:

<T extends CounterListener> Handle<T> addListener(T listener);
Copy to Clipboard Toggle word wrap

CounterListener 有以下接口:

public interface CounterListener {
   void onUpdate(CounterEvent entry);
}
Copy to Clipboard Toggle word wrap

返回的 Handle 对象具有在不再需要时删除 CounterListener 的主要目标。另外,它还允许访问它处理的 CounterListener 实例。它有以下接口:

public interface Handle<T extends CounterListener> {
   T getCounterListener();
   void remove();
}
Copy to Clipboard Toggle word wrap

最后,CounterEvent 具有上一个和当前的值和状态。它有以下接口:

public interface CounterEvent {
   long getOldValue();
   State getOldState();
   long getNewValue();
   State getNewState();
}
Copy to Clipboard Toggle word wrap
注意

对于未绑定的强计数器和弱计数器,状态始终是 State.VALIDstate.LOWER_BOUND_REACHEDState.UPPER_BOUND_REACHED 仅对有界强计数器有效。

警告

弱计数器 reset () 操作将触发带有中间值的多个通知。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat