网格增益原子get-modify-put

时间:2014-08-06 23:52:11

标签: gridgain

在GG中自动修改对象的最佳方法是什么?

    GridCache<String, Message> cache = GridGain.grid().cache("message");
    Message message = cache.get(messageId);
    if(message != null) {
        message.setReadDate(new Date());
        cache.putxAsync(messageId, message);
    }

我希望用在数据节点上执行的原子操作替换它

    cache.execute(messageId, new Task() {
        public void execute(V value) {
            value.setReadDate();
            return value;
        }
    });

1 个答案:

答案 0 :(得分:1)

GridGain拥有cache.transform(...)cache.transformAndCompute(...)方法,它们的工作方式完全符合您的需要。

请查看文档中的Delta (a.k.a. Partial) Updates部分。