ThreadFactory (Java SE 15 & JDK 15)
Description: declaration: module: java.base, package: java.util.concurrent, interface: ThreadFactory
Keywords: java.util.concurrent.ThreadFactory interface

Module java.base
Package java.util.concurrent

# Interface ThreadFactory

    public interface ThreadFactory

An object that creates new threads on demand. Using thread factories removes hardwiring of calls to `new Thread`, enabling applications to use special thread subclasses, priorities, etc.

The simplest implementation of this interface is just:

     class SimpleThreadFactory implements ThreadFactory {
       public Thread newThread(Runnable r) {
         return new Thread(r);
       }
     }

The `Executors.defaultThreadFactory()` method provides a more useful simple implementation, that sets the created thread context to known values before returning it.

Since:
  1.5

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `Thread` | `newThread​(Runnable r)` | Constructs a new `Thread`.

- ## Method Details

  - ### newThread

    Thread newThread​(Runnable r)
    Constructs a new `Thread`. Implementations may also initialize priority, name, daemon status, `ThreadGroup`, etc.
    Parameters:
      `r` - a runnable to be executed by new thread instance
    Returns:
      constructed thread, or `null` if the request to create a thread is rejected