void startShutdown(ShutdownModeAmp mode,ExitCode exitCode,Result<String> result){
  _shutdownMode=mode;
  _shutdownResult.compareAndSet(null,result);
  _shutdownExitCode.compareAndSet(null,exitCode);
  wake();
}

void startShutdown ( ShutdownModeAmp mode , ExitCode exitCode , Result < String > result ) { _shutdownMode = mode ; _shutdownResult . compareAndSet ( null , result ) ; _shutdownExitCode . compareAndSet ( null , exitCode ) ; wake ( ) ; }
starts the destroy sequence
