Maison > Java > javaDidacticiel > Comment créer une carte expirant en fonction du temps en Java ?

Comment créer une carte expirant en fonction du temps en Java ?

Barbara Streisand
Libérer: 2024-11-27 14:35:12
original
250 Les gens l'ont consulté

How to Create a Time-Based Expiring Map in Java?

Carte/cache temporel Java avec clés expirantes

Q : Existe-t-il une carte Java intégrée ou une structure de données similaire qui automatiquement supprime les entrées après un intervalle spécifié ?

R : Oui, Google Collections (maintenant connu sous le nom de Guava) fournit une classe MapMaker avec l'élément souhaité fonctionnalité :

ConcurrentMap<Key, Graph> graphs = new MapMaker()
   .concurrencyLevel(4)
   .softKeys()
   .weakValues()
   .maximumSize(10000)
   .expiration(10, TimeUnit.MINUTES)
   .makeComputingMap(
       new Function<Key, Graph>() {
         public Graph apply(Key key) {
           return createExpensiveGraph(key);
         }
       });
Copier après la connexion

Remarque : Depuis Guava 10.0, les méthodes MapMaker mentionnées ci-dessus sont obsolètes au profit de la classe CacheBuilder :

LoadingCache<Key, Graph> graphs = CacheBuilder.newBuilder()
    .maximumSize(10000)
    .expireAfterWrite(10, TimeUnit.MINUTES)
    .build(
        new CacheLoader<Key, Graph>() {
          public Graph load(Key key) throws AnyException {
            return createExpensiveGraph(key);
          }
        });
Copier après la connexion

Ce CacheBuilder fournit une flexibilité supplémentaire et une API plus moderne pour gérer le comportement du cache.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal