enqueueRestart method

void enqueueRestart()

Implementation

void enqueueRestart() async {
  if (!mutex.isLocked) {
    await mutex.protect(() async {
      isEnqueued = true;
      while (isEnqueued) {
        isEnqueued = false;
        await killAll(true);
        await Future.delayed(Duration(milliseconds: 50));
        await run();
      }
    });
    return;
  }

  logger.detail("Trying to restart server");
  isEnqueued = true;
  killAll();
}