在這篇博客中,主要把之前看的書的內(nèi)容記錄一下,個(gè)人感覺還是可以的,原題是這樣的:開發(fā)一個(gè)高效的緩存。這里指的是單機(jī).

首先我來看當(dāng)前的一個(gè)版本

1 public interface Computable<T, R> {2     R compute(T input) throws InterruptedException;3 }

iOS培訓(xùn),Swift培訓(xùn),蘋果開發(fā)培訓(xùn),移動(dòng)開發(fā)培訓(xùn)

 1 public class Memoizer1<T,R> implements  Computable<T,R>{ 2  3     private  final Map<T,R> cache = new HashMap<>(); 4  5     private  final Computable<T,R> computable; 6  7     public Memoizer1(Computable<T, R> computable) { 8         this.computable = computable; 9     }10 11     public synchronized R compute(T input) throws InterruptedException {12         R result= cache.get(input);13         if(result ==null){14             result = computable.compute(input);15        &n