欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

使用google guava库中MapMarker做java的内存缓存,guavamapmarker,google的guava

来源: javaer 分享于  点击 19840 次 点评:236

使用google guava库中MapMarker做java的内存缓存,guavamapmarker,google的guava


google的guava库中的MapMaker类可以方便的做内部缓存,可以指定缓存的并发级别,过期失效,也可以指定为弱引用。

下面代码片段:

ConcurrentMap<Key, Graph> graphs = new MapMaker()   .concurrencyLevel(32)   .softKeys()   .weakValues()   .expiration(30, TimeUnit.MINUTES)   .makeComputingMap(       new Function<Key, Graph>() {         public Graph apply(Key key) {           return createExpensiveGraph(key);         }       });

使用上述方法时可以从google code上下载jar包引用到项目中,或者在项目中添加google guava的maven引用:

<dependency>    <groupId>com.google.guava</groupId>    <artifactId>guava-collections</artifactId>    <version>r03</version></dependency>
相关栏目:

用户点评