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