Package jmri.jmrit.audio
Class AbstractAudioThread
java.lang.Object
java.lang.Thread
jmri.jmrit.audio.AbstractAudioThread
- All Implemented Interfaces:
Runnable,AudioThread
- Direct Known Subclasses:
AbstractAudioListener.AudioListenerMoveThread,AbstractAudioSource.AudioSourceFadeThread,AbstractAudioSource.AudioSourceMoveThread,AudioCommandThread
Base implementation of all common thread code for use by threads in the
various Audio classes.
This file is part of JMRI.
This file is part of JMRI.
JMRI is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation. See the "COPYING" file for a copy of this license.
JMRI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
Nested Class Summary
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_PRIORITYFields inherited from interface jmri.jmrit.audio.AudioThread
GET, NA, SET -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor that gives this thread a unique name based on the value of the static counter -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcleanup()Perform necessary cleanup routines before shutting down.voiddie()Method used to tell the thread that it should shutdownprotected booleandying()Checks if the thread is in the process of shutting down.booleanChecks if the thread is still alive (or in the process of shutting down)protected static voidsnooze(long ms) Sleep for the specified number of milliseconds.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, run, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
Constructor Details
-
AbstractAudioThread
public AbstractAudioThread()Default constructor that gives this thread a unique name based on the value of the static counter
-
-
Method Details
-
cleanup
Perform necessary cleanup routines before shutting down. -
isThreadAlive
Description copied from interface:AudioThreadChecks if the thread is still alive (or in the process of shutting down)Once cleanup has finished, this should return False
- Specified by:
isThreadAlivein interfaceAudioThread- Returns:
- true, while thread is alive; false, when all cleanup has finished
-
die
Description copied from interface:AudioThreadMethod used to tell the thread that it should shutdown- Specified by:
diein interfaceAudioThread
-
dying
Checks if the thread is in the process of shutting down.- Returns:
- true, if thread should die
-
snooze
Sleep for the specified number of milliseconds.(Avoids cluttering the main code with the try-catch construct)
- Parameters:
ms- number of milliseconds to sleep for
-