Package org.jboss.netty.util
Class ThreadRenamingRunnable
java.lang.Object
org.jboss.netty.util.ThreadRenamingRunnable
- All Implemented Interfaces:
Runnable
A
Runnable
that changes the current thread name and reverts it back
when its execution ends. To change the default thread names set by Netty,
use setThreadNameDeterminer(ThreadNameDeterminer)
.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ThreadNameDeterminer
private static final InternalLogger
private final String
private final Runnable
private static ThreadNameDeterminer
-
Constructor Summary
ConstructorsConstructorDescriptionThreadRenamingRunnable
(Runnable runnable, String proposedThreadName) ThreadRenamingRunnable
(Runnable runnable, String proposedThreadName, ThreadNameDeterminer determiner) Creates a new instance which wraps the specifiedrunnable
and changes the thread name to the specified thread name when the specifiedrunnable
is running. -
Method Summary
Modifier and TypeMethodDescriptionprivate String
getNewThreadName
(String currentThreadName) static ThreadNameDeterminer
Returns theThreadNameDeterminer
which overrides the proposed new thread name.void
run()
static void
setThreadNameDeterminer
(ThreadNameDeterminer threadNameDeterminer) Sets theThreadNameDeterminer
which overrides the proposed new thread name.
-
Field Details
-
logger
-
threadNameDeterminer
-
determiner
-
runnable
-
proposedThreadName
-
-
Constructor Details
-
ThreadRenamingRunnable
public ThreadRenamingRunnable(Runnable runnable, String proposedThreadName, ThreadNameDeterminer determiner) Creates a new instance which wraps the specifiedrunnable
and changes the thread name to the specified thread name when the specifiedrunnable
is running. -
ThreadRenamingRunnable
-
-
Method Details
-
getThreadNameDeterminer
Returns theThreadNameDeterminer
which overrides the proposed new thread name. -
setThreadNameDeterminer
Sets theThreadNameDeterminer
which overrides the proposed new thread name. Please note that the specifiedThreadNameDeterminer
affects only newThreadRenamingRunnable
s; the existing instances are not affected at all. Therefore, you should make sure to call this method at the earliest possible point (i.e. before any Netty worker thread starts) for consistent thread naming. Otherwise, you might see the default thread names and the new names appear at the same time in the full thread dump. -
run
public void run() -
getNewThreadName
-