Class WhatNextManager.TimedJvmQuit

  • All Implemented Interfaces:
    java.lang.Runnable
    Enclosing class:
    WhatNextManager

    public static class WhatNextManager.TimedJvmQuit
    extends java.lang.Thread
    A demon thread which is started by triggerTimedQuit. It will then (currently) sleep 10 (120) seconds, and if it is then still alive, do a System.exit(1) to terminate the JVM. If, however, the game shutdown proceeded successfully as planned, Start.main() will already have reached it's end and there should not be any other non-demon threads alive, so the JVM *should* terminate by itself cleanly. So, if this TimedJvmQuit strikes, it means the "clean shutdown" has somehow failed.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.lang.Thread

        java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.lang.String defaultName  
      private static java.util.logging.Logger LOGGER  
      private java.lang.String name  
      private long timeOutInSecs  
      • Fields inherited from class java.lang.Thread

        MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
    • Constructor Summary

      Constructors 
      Constructor Description
      TimedJvmQuit()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void run()  
      • 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
    • Field Detail

      • LOGGER

        private static final java.util.logging.Logger LOGGER
      • name

        private final java.lang.String name
    • Constructor Detail

      • TimedJvmQuit

        public TimedJvmQuit()
    • Method Detail

      • run

        public void run()
        Specified by:
        run in interface java.lang.Runnable
        Overrides:
        run in class java.lang.Thread