/** * */ package com.krislq.cache.util; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; /** * * @author <a href="mailto:kris1987@qq.com">Kris.lee</a> * @website www.krislq.com * @date Nov 20, 2012 * @version 1.0.0 * */ public class ThreadPoolUtil { private static final ExecutorService pool; static { pool = Executors.newCachedThreadPool(); // pool = Executors.newFixedThreadPool(4); // pool = Executors.newSingleThreadExecutor(); // pool = Executors.newScheduledThreadPool(4); } /** * * @param command */ public static void execute(Runnable command) { pool.execute(command); } /** * * @param <T> * @param task * @return */ public static <T> Future<T> submit(Callable<T> task) { return pool.submit(task); } /** * * @param task * @return */ public static Future<?> submit(Runnable task) { return pool.submit(task); } /** * * @param <T> * @param task * @param result * @return */ public static <T> Future<T> submit(Runnable task, T result) { return pool.submit(task, result); } }