code: public boolean checkCondition() {
  
          // assure that the checkinterval is elapsed .....
          if (super.checkCondition()) {
              return true;
          }
  
          if (this.watchdogReference.isStale()) {
              return false;
          }
  
          Watchdog wd = this.watchdogReference.getWatchdog();
  
          //log.info("Checking "+this+"\n watched WD is alive="+watchedWatchdog.isAlive()+" is killed="+watchedWatchdog.isKilled()+" WD-Thead="+this.watchedWatchdog.getThreadHandle());
          if (!wd.isAlive()) {
              if (log.isInfoEnabled()) {
                  String logString = "RestartCondition :: Watchdog " + wd.getThreadHandle() + " is not alive ";
                  log.info(new CheckConditionFailedLog(this, logString).toString());
              }
              return false;
          }
          return true;
      }
docs: Not synchronized as to be meant for the watch dog exclusively
  
  Do not call it not synchronized