Rumah >Java >javaTutorial >Bagaimana untuk Mencipta Peta Tamat Tempoh Berasaskan Masa di Jawa?
Peta/Cache Berasaskan Masa Java dengan Kekunci Tamat Tempoh
S: Adakah terdapat Peta Java terbina dalam atau struktur data serupa yang secara automatik mengalih keluar masukan selepas selang waktu tertentu?
J: Ya, Google Collections (kini dikenali sebagai Guava) menyediakan Kelas MapMaker dengan kefungsian yang diingini:
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); } });</key></key>
Nota: Mulai Guava 10.0, kaedah MapMaker yang dinyatakan di atas tidak digunakan lagi memihak kepada kelas 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); } });</key></key>
CacheBuilder ini menyediakan fleksibiliti tambahan dan API yang lebih moden untuk mengurus tingkah laku cache.
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Peta Tamat Tempoh Berasaskan Masa di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!