Package org.eclipse.net4j.util.concurrent

## Class MonitoredThread

- java.lang.Object
- - java.lang.Thread
  - - org.eclipse.net4j.util.concurrent.MonitoredThread

- All Implemented Interfaces:
    `java.lang.Runnable`

      public abstract class MonitoredThread
      extends java.lang.Thread

  Since:
    2.0
  Author:
    Eike Stepper

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `MonitoredThread.MultiThreadMonitor` |
    `static interface` | `MonitoredThread.ThreadMonitor` |

    - ### Nested classes/interfaces inherited from class java.lang.Thread

      `java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler`

  - ### Field Summary

    - ### Fields inherited from class java.lang.Thread

      `MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `MonitoredThread​(java.lang.String name, MonitoredThread.ThreadMonitor monitor)` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected abstract void` | `doRun()` |
    `long` | `getTimeStamp()` |
    `void` | `heartBeat()` |
    `boolean` | `isIdleTimeoutExpired​(long idleTimeOut)` |
    `void` | `run()` |
    `void` | `shutdown()` |

    - ### Methods inherited from class java.lang.Thread

      `activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### MonitoredThread

          public MonitoredThread​(java.lang.String name,
                                 MonitoredThread.ThreadMonitor monitor)

  - ### Method Detail

    - #### getTimeStamp

          public long getTimeStamp()

    - #### isIdleTimeoutExpired

          public boolean isIdleTimeoutExpired​(long idleTimeOut)

    - #### heartBeat

          public void heartBeat()

    - #### shutdown

          public void shutdown()

    - #### run

          public void run()

      Specified by:
        `run` in interface `java.lang.Runnable`
      Overrides:
        `run` in class `java.lang.Thread`

    - #### doRun

          protected abstract void doRun()
                                 throws java.lang.Exception

      Throws:
        `java.lang.Exception`