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 CustomizableThreadCreator(String threadNamePrefix)
threadNamePrefix
- the prefix to use for the names of newly created threadspublic void setThreadNamePrefix(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)
public void setThreadGroup(ThreadGroup threadGroup)
setThreadGroupName(java.lang.String)
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
)