今天,我想在一种可能不熟悉的事情上使用Infinispan。我想保存一个变量,让我们在缓存中调用它几次--同时能够将它作为X继承。
普通的,旧的MVCC。然而,看起来无穷大在后端使用MVCC --但我无法在我的小测试应用程序中使用它。
这是相应的代码:
acTest.put("test", "blubber", 0, TimeUnit.MILLISECONDS );
acTest.put("test", "nothing", 0, TimeUnit.MILLISECONDS );
if( acTest.containsKey("test") )
{
Object foo = acTest.get("test"); // don't know how to get the "blubber" out of that
String name = (String) test2.get("name");
System.out.println(name);
}当然,acTest包含密钥--但当我将"nothing“foo的数值"nothing”提高时,无法将该键的值"blubber“增大……但是我想得到第一个版本的"foo“,因此我想得到”脂肪“。
我希望能够加入不同版本的测试。我认为我可以用put操作中的不同参数创建不同版本的“测试”--但是eclipse绝对没有这方面的文档.
有人能帮我吗?
发布于 2011-10-26 16:45:05
Infinispan在它的容器中使用MVCC作为内部用途,除了通过writeSkewCheck之外,这目前还不是通过用户API公开的特性。
在5.1版中,API将公开乐观锁定,这对于需要利用MVCC功能的一些用例可能很有用,但您仍然无法提取以前的值。
您可以使用AtomicMap存储多个值,或者使用包含版本的自定义键对象,在Infinispan的API基础上构建所需的内容。
DeltaAware是另一种选择,但它是一种面向专家的低级别接口。
https://stackoverflow.com/questions/7896940
复制相似问题