## org.jboss.netty.util
Class ThreadRenamingRunnable

    java.lang.Object
      org.jboss.netty.util.ThreadRenamingRunnable

All Implemented Interfaces:
  Runnable

    public class ThreadRenamingRunnable

extends Object
implements 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)`.

Version:
  $Rev: 2080 $, $Date: 2010-01-26 18:04:19 +0900 (Tue, 26 Jan 2010) $
Author:
  The Netty Project, Trustin Lee

Constructor Summary
`ThreadRenamingRunnable(Runnable runnable, String proposedThreadName)` Creates a new instance which wraps the specified `runnable` and changes the thread name to the specified thread name when the specified `runnable` is running.

Method Summary
`static ThreadNameDeterminer` `getThreadNameDeterminer()` Returns the `ThreadNameDeterminer` which overrides the proposed new thread name.
`void` `run()`
`static void` `setThreadNameDeterminer(ThreadNameDeterminer threadNameDeterminer)` Sets the `ThreadNameDeterminer` which overrides the proposed new thread name.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ThreadRenamingRunnable

    public ThreadRenamingRunnable(Runnable runnable,
                                  String proposedThreadName)

  Creates a new instance which wraps the specified `runnable` and changes the thread name to the specified thread name when the specified `runnable` is running.

Method Detail

### getThreadNameDeterminer

    public static ThreadNameDeterminer getThreadNameDeterminer()

  Returns the `ThreadNameDeterminer` which overrides the proposed new thread name.

### setThreadNameDeterminer

    public static void setThreadNameDeterminer(ThreadNameDeterminer threadNameDeterminer)

  Sets the `ThreadNameDeterminer` which overrides the proposed new thread name. Please note that the specified `ThreadNameDeterminer` affects only new `ThreadRenamingRunnable`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()

  Specified by:
    `run` in interface `Runnable`

Copyright © 2008-2010 JBoss, a division of Red Hat, Inc.. All Rights Reserved.