code: @Override
      public List<T> closeAndFlush() {
          close();
          //Must wait until after close to drain
          ArrayList<T> remaining = new ArrayList<>();
          backingQueue.drainTo(remaining);
  
          return remaining;
      }
docs: {@inheritDoc}