Guava缓存器源码分析——删除消息

Datetime:2016-08-23 03:47:33          Topic: Source Code Analysis           Share

                .maximumSize(3)

                .expireAfterWrite(10, TimeUnit.SECONDS)

                .recordStats()

                .removalListener(new RemovalListener<String, Integer>() {

                        @Override

                        public void onRemoval (RemovalNotification<String, Integer> rn) {

                            System.out.println(rn.getKey() + "被移除");

                        }

                })

                .build(

                        new CacheLoader<String, Integer>() {

                                @Override

                                public Integer load(String key) throws Exception {

                                        return  num++; //初始值为1;

                                }

                        });

        try {

                System.out.println(cache.get("a"));

                System.out.println(cache.get("b"));

                System.out.println(cache.get("c"));

                System.out.println(cache.get("d"));

                System.out.println(cache.get("e"));

        } catch (ExecutionException e) {

                e.printStackTrace();

        }




About List