@Override
  public void run() {
    // for testing purposes
    if (CacheClientProxy.isSlowStartForTesting) {
      long slowStartTimeForTesting =
          Long.getLong(KEY_SLOW_START_TIME_FOR_TESTING, DEFAULT_SLOW_STARTING_TIME);
      long elapsedTime = 0;
      long startTime = System.currentTimeMillis();
      while ((slowStartTimeForTesting > elapsedTime) && CacheClientProxy.isSlowStartForTesting) {
        try {
          Thread.sleep(500);
        } catch (InterruptedException ignore) {
          if (logger.isDebugEnabled()) {
            logger.debug("Slow start for testing interrupted");
          }
          break;
        }
        elapsedTime = System.currentTimeMillis() - startTime;
      }
      if (slowStartTimeForTesting < elapsedTime) {
        CacheClientProxy.isSlowStartForTesting = false;
      }
    }

    runDispatcher();
  }
Returns the size of the queue calculated through stats This includes events that have
dispatched but have yet been removed

@return the size of the queue
geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/MessageDispatcher.java