Java tutorial
//package com.java2s; //License from project: Apache License import com.google.common.util.concurrent.ThreadFactoryBuilder; import java.util.concurrent.*; public class Main { /** * Wrapper over newFixedThreadPool. Thread names are formatted as prefix-ID, where ID is a * unique, sequentially assigned integer. */ public static ThreadPoolExecutor newDaemonFixedThreadPool(int nThreads, String prefix) { ThreadFactory threadFactory = namedThreadFactory(prefix); return (ThreadPoolExecutor) Executors.newFixedThreadPool(nThreads, threadFactory); } /** * Create a thread factory that names threads with a prefix and also sets the threads to daemon. */ public static ThreadFactory namedThreadFactory(String prefix) { return new ThreadFactoryBuilder().setDaemon(true).setNameFormat(prefix + "-%d").build(); } }