Внедрение ленивого поставщика в java - программирование
Подтвердить что ты не робот

Внедрение ленивого поставщика в java

Каков правильный парадигм или класс полезности (похоже, не может найти существующий класс) для реализации ленивого поставщика в Java?

Я хочу иметь что-то, что обрабатывает поведение compute-once/cache-later и позволяет мне самостоятельно определять поведение вычислений. Я знаю, что это, вероятно, имеет ошибку, но имеет правильную семантику:

abstract public class LazySupplier<T> implements Supplier<T> 
{
    private volatile T t;
    final private Object lock = new Object();

    final public T get() {
        if (t == null)
        {
            synchronized(lock)
            {
                if (t == null)
                    t = compute();
            }
        }
        return t;
    }
    abstract protected T compute();
}
4b9b3361