java - 通过 hazelcast 传递信号

标签 java message-queue hazelcast

我将消息放入 hazelcast 队列,如下所示:

hazelcastInstance.getQueue(LOGOUT_ALL_USERS_QUEUE_NAME).add(Void.TYPE);

在另一边我注册了队列监听器:

hazelcastInstance.getQueue(LOGOUT_ALL_USERS_QUEUE_NAME).addItemListener(new ItemListener<Void>() {
   @Override
   public void itemAdded(ItemEvent<Void> item) {
     LOGGER.info("Logout all user signal received");
     logoutAllUsers();
   }

   @Override
   public void itemRemoved(ItemEvent<Void> item) {
          //
   }
 }, false);
}

无法编译。

> Error:(36, 50) java: D:\...\LogoutServiceImpl.java:36:
> addItemListener(com.hazelcast.core.ItemListener<java.lang.Object>,boolean)
> in com.hazelcast.core.ICollection<java.lang.Object> cannot be applied
> to (<anonymous
> com.hazelcast.core.ItemListener<java.lang.Void>>,boolean)

我只想将信号从一个地方传递到另一个地方,但没有值(value)。

hazelcast 打算如何做到这一点?

附注

我使用java 6

最佳答案

问题与

有关
hazelcastInstance.getQueue(LOGOUT_ALL_USERS_QUEUE_NAME)

返回IQueue<Object> 。如果将其转换为 IQueue<Void> - 一切正常

关于java - 通过 hazelcast 传递信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35622222/

相关文章:

java - 将 MySql 日期时间映射到 hibernate

java - JPA:在保存时忽略字段,但在选择时获取

java - Android复杂图形元素

jms - ActiveMQ消息分组性能

java - Hazelcast -executeOnEntries 在第一次执行后停止

size - 通过 jmx 监控获取以 MB 或 KB 为单位的 Hazelcast map 大小

java - java中字符串的可重用性?

java - SQS 队列中的确认消息

posix - 如何获得唯一的 POSIX 消息队列?

java - 从 hazelcast 队列中删除项目时出现 NullPointerException