code: public ElapsedTime process() {
          try {
              long start = System.currentTimeMillis();
              ioProcess();
              long ioDone = System.currentTimeMillis();
              loopProcess();
              long end = System.currentTimeMillis();
  
              return new ElapsedTime(start, ioDone, end);
          } catch (Exception e) {
              Logger.error("-ERR error occurs in hbMain", e);
          }
  
          return null;
      }
docs: Main loop of nio
  
  @return elapsed time