public class CustomizableThreadCreator extends Object implements Serializable
Thread
instances.
Provides various bean properties: thread name prefix, thread priority, etc.
Serves as base class for thread factories such as
CustomizableThreadFactory
.
CustomizableThreadFactory
,
Serialized FormConstructor and Description |
---|
CustomizableThreadCreator()
Create a new CustomizableThreadCreator with default thread name prefix.
|
CustomizableThreadCreator(String threadNamePrefix)
Create a new CustomizableThreadCreator with the given thread name prefix.
|
Modifier and Type | Method and Description |
---|---|
Thread |
createThread(Runnable runnable)
Template method for the creation of a new
Thread . |
protected String |
getDefaultThreadNamePrefix()
Build the default thread name prefix for this factory.
|
ThreadGroup |
getThreadGroup()
Return the thread group that threads should be created in
(or
null for the default group). |
String |
getThreadNamePrefix()
Return the thread name prefix to use for the names of newly
created threads.
|
int |
getThreadPriority()
Return the priority of the threads that this factory creates.
|
boolean |
isDaemon()
Return whether this factory should create daemon threads.
|
protected String |
nextThreadName()
Return the thread name to use for a newly created
Thread . |
void |
setDaemon(boolean daemon)
Set whether this factory is supposed to create daemon threads,
just executing as long as the application itself is running.
|
void |
setThreadGroup(ThreadGroup threadGroup)
Specify the thread group that threads should be created in.
|
void |
setThreadGroupName(String name)
Specify the name of the thread group that threads should be created in.
|
void |
setThreadNamePrefix(String threadNamePrefix)
Specify the prefix to use for the names of newly created threads.
|
void |
setThreadPriority(int threadPriority)
Set the priority of the threads that this factory creates.
|
public CustomizableThreadCreator()
public void setThreadNamePrefix(@Nullable String threadNamePrefix)
public String getThreadNamePrefix()
public void setThreadPriority(int threadPriority)
Thread.NORM_PRIORITY
public int getThreadPriority()
public void setDaemon(boolean daemon)
Default is "false": Concrete factories usually support explicit cancelling. Hence, if the application shuts down, Runnables will by default finish their execution.
Specify "true" for eager shutdown of threads which still actively execute
a Runnable
at the time that the application itself shuts down.
Thread.setDaemon(boolean)
public boolean isDaemon()
public void setThreadGroupName(String name)
setThreadGroup(java.lang.ThreadGroup)
public void setThreadGroup(@Nullable ThreadGroup threadGroup)
setThreadGroupName(java.lang.String)
@Nullable public ThreadGroup getThreadGroup()
null
for the default group).public Thread createThread(Runnable runnable)
Thread
.
The default implementation creates a new Thread for the given
Runnable
, applying an appropriate thread name.
runnable
- the Runnable to executenextThreadName()
protected String nextThreadName()
Thread
.
The default implementation returns the specified thread name prefix with an increasing thread count appended: e.g. "SimpleAsyncTaskExecutor-0".
getThreadNamePrefix()
protected String getDefaultThreadNamePrefix()
null
)