org.eclipse.net4j.util.concurrent

## Class MonitoredThread

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

- All Implemented Interfaces:
    Runnable

      public abstract class MonitoredThread
      extends Thread

  Since:
    2.0
  Author:
    Eike Stepper

- - ### Nested Class Summary

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

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

      `Thread.State, Thread.UncaughtExceptionHandler`

  - ### Field Summary

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

      `MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MonitoredThread(String name, MonitoredThread.ThreadMonitor monitor)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and 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, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, 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(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 `Runnable`
      Overrides:
        `run` in class `Thread`

    - #### doRun

          protected abstract void doRun()
                                 throws Exception

      Throws:
        `Exception`

Copyright (c) 2014 Eike Stepper (Berlin, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html