Âòîðíèê, 25 Ôåâðàëÿ 2014 ã. 10:53
+ â öèòàòíèê
Ëèñòèíã 2. Èñïîëüçîâàíèå FutureResult äëÿ óëó÷øåíèÿ êýøèðîâàíèÿ
public class FileCache {
private Map cache = new HashMap();
private Executor executor = new PooledExecutor();
public void get(final String name) {
FutureResult result;
synchronized(cache) {
result = cache.get(name);
if (result == null) {
result = new FutureResult();
executor.execute(result.setter(new Callable() {
public Object call() { return loadFile(name); }
}));
cache.put(result);
}
}
return result.get();
}
}
Ìåòêè:
FutureResult
java
-
Çàïèñü ïîíðàâèëàñü
-
0
Ïðîöèòèðîâàëè
-
0
Ñîõðàíèëè
-