LoginSignup
0
0

More than 5 years have passed since last update.

EHCacheのgetSizeは厳密ではない

Last updated at Posted at 2015-01-29

やりたかったこと

EHCacheを使って、揮発するCacheを作る。そのとき、getする前に揮発したことを検知して、特定の処理を行なう、みたいな処理をしたかった。

ので、揮発しないHeapでsizeを保存しておき、必要なときにgetSizeを呼び出して揮発をチェックしようとした。

Cache.getSizeの挙動

ところがCache.getSizeの挙動は厳密ではない。少なくとも揮発したレコードの値が反映されるまで少々掛かる。

英語読めないが(笑)多分そんなようなことが書いてある。厳密なsizeを求めたいときはgetKeysWithExpiryCheck().size()を使えば良さそうだ。

とはいえ非常に重い処理だと思われるので、そもそも頻繁に揮発のチェックをするのは、原理的に無理だと思った方が良さそうだ。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0