2012-07-10 33 views

回答

0

如果版本不同,则表示另一个客户端已经进入并更新缓存的对象。您可以通过捕获DataCacheException来检测此问题,该问题将从您的调用中抛出,并检查ErrorCodeDataCacheErrorCode的枚举 - CacheItemVersionMismatch是要测试的特定条目。捕获此错误表明,您的当前客户端正在使用的缓存项目已过时,您应该在尝试制作您的客户端之前从客户端获取最新版本(您可能想也可能不想向用户显示)再次改变。

这就是为什么在乐观并发场景中,您希望获取缓存对象,进行更改并尽快将其返回缓存 - 您不希望持有任何类型的长版本运行过程或者你开始看到这些问题。