II
Size: a a a
II
SK
II
SK
SK
SK
SK
javaКак такой вариант?
class Util {
public static <T> T memoizedCalculation(ConcurrentHashMap<Key, FutureTask<T>> cache, Key key, Callable<T> calculation) {
try {
FutureTask<T> t = cache.computeIfAbsent(key, k -> new FutureTask<>(calculation));
t.run();
return t.get();
} catch(Exception ex) {
throw new RuntimeException(ex);
}
}
}
SK
MM
MM
RK
RK
SK
RK
SK
RK
SK
SK
SK
II
javaКак такой вариант?
class Util {
public static <T> T memoizedCalculation(ConcurrentHashMap<Key, FutureTask<T>> cache, Key key, Callable<T> calculation) {
try {
FutureTask<T> t = cache.computeIfAbsent(key, k -> new FutureTask<>(calculation));
t.run();
return t.get();
} catch(Exception ex) {
throw new RuntimeException(ex);
}
}
}