Abrufen von abgelaufenen Objekten in Ehcache
-
03-07-2019 - |
Frage
Ich mag die folgende algorythm oben Ehcache implementieren:
- versuchen, ein Element aus dem Cache zu bekommen
- , wenn das Element nicht abgelaufen ist
- dienen, den Wert
- sonst
- dienen der abgelaufenen Wert
- aktualisieren Sie das Element im Hintergrund
Aber ich habe nie ein abgelaufenes Element erhalten (Element.isExpired ()). Ich habe versucht, mit meiner Cache-Konfiguration (insbesondere TimeToLive und TimeToIdle) zu spielen, aber ich kann nicht scheinen, um zu arbeiten, wie ich will. Ich kann den Schlüssel im Cache-Liste, aber wenn ich ein abgelaufenes Element „() erhalten“, hat ich immer eine Null.
Was mache ich falsch?
Lösung
Du machst nichts falsch gemacht. Die Dokumentation sagt, dass ein abgelaufenes Element bekommt es aus dem Cache entfernen wird und null zurück.
Ich vermute, dass das einzige Mal, wenn ein Element kommen wird als abgelaufen ist, wenn Sie ein Ereignis-Listener listenings für Element Ablauf Ereignisse, aber ich kann ich nicht sagen, habe dies jemals getestet.