final CSMARTConsole console = this; GUIUtils.timeConsumingTaskStart(this);
runStart = new Date(); nodeCreationInfoList = new ArrayList(); prepareToCreateNodes(); stopNodeCreation = false; startTimers(); nodeCreator = new Thread("CreateNodes") { public void run() { createNodes(); starting = false;  boolean reset = false; synchronized (runningNodesLock) { if (runningNodes.isEmpty()) reset = true; } if (reset) { SwingUtilities.invokeLater(new Runnable() { public void run() { runButton.setSelected(false); runButton.setEnabled(true); unsetTrialValues(); currentTrial--; } }); } } }; starting = true;
  private void runTrial() {    setTrialValues();    final CSMARTConsole console = this;    GUIUtils.timeConsumingTaskStart(this);    try {      new Thread("CreateNodes") {        public void run() {          createNodes();          GUIUtils.timeConsumingTaskEnd(console);        }      }.start();    } catch (RuntimeException re) {      re.printStackTrace();      GUIUtils.timeConsumingTaskEnd(this);    }  }