An instance of this interface is an object that creates Thread objects to run Runnable objects. You might define a THReadFactory if you want to set the priority, name , or ThreadGroup of the threads used by a ThreadPoolExecutor , for example. A number of the factory methods of the Executors utility class rely on THReadPoolExecutor and accept a ThreadFactory argument. public interface ThreadFactory { // Public Instance Methods Thread newThread (Runnable r ); } Passed ToExecutors.{newCachedThreadPool( ) , newFixedThreadPool( ) , newScheduledThreadPool( ) , newSingleThreadExecutor( ) , newSingleThreadScheduledExecutor( )} , ScheduledThreadPoolExecutor.ScheduledThreadPoolExecutor( ) , ThreadPoolExecutor.{setThreadFactory( ) , ThreadPoolExecutor( )} Returned ByExecutors.{defaultThreadFactory( ) , privilegedThreadFactory( )} , ThreadPoolExecutor.getThreadFactory( ) |