0

假设我们有一个带有CacheLoaderWriter的缓存,所以我们注册到 events:writewriteAll

这些钥匙当时的状态如何?

即如果另一个线程尝试这样做cache.get(keyThatBeingWritten),它会被阻塞直到write()/writeAll()操作退出吗?

4

1 回答 1

1

writeAll()从逻辑上讲,就像一连串一样write(),一个线程完全有可能观察到一些已经写入的数据,而另一个线程仍在忙于执行writeAll()

关于write(),如果需要,它将阻止并发读取器和写入器线程在同一个键上工作,只要需要满足 Ehcache 可见性保证。

于 2019-07-24T21:03:34.757 回答