Are you still writing your own Java lazy loading code?

Java lazy loading tool class

 

com.google.common.base.Suppliers.memoize(Supplier<T>)

com.google.common.base.Suppliers.memoizeWithExpiration(Supplier<T>, long, TimeUnit)

 

 

package tool;

import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;

public class RawTest {

	public static void main(String[] args) throws Exception {
		Supplier<String> supplier = Suppliers.memoize(() -> supply());
		System.out.println(supplier.get());
		System.out.println(supplier.get());
		System.out.println(supplier.get());
	}

	public static String supply() {
		System.out.println("called supply");
		return "Hello World";
	}

}

 

result

 

wrote
called supply
Hello World
Hello World
Hello World

 

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326739600&siteId=291194637