@Override
  protected void initializeMessageQueue(String id, boolean cleanQueues) {
    Set<Region<?, ?>> targetRs = new HashSet<>();
    for (InternalRegion region : sender.getCache().getApplicationRegions()) {
      if (region.getAllGatewaySenderIds().contains(id)) {
        targetRs.add(region);
      }
    }
    if (logger.isDebugEnabled()) {
      logger.debug("The target Regions are(PGSEP) {}", targetRs);
    }

    ParallelGatewaySenderQueue queue =
        new ParallelGatewaySenderQueue(sender, targetRs, index, nDispatcher, cleanQueues);

    queue.start();
    this.queue = queue;

    if (queue.localSize() > 0) {
      queue.notifyEventProcessorIfRequired();
    }
  }
use in concurrent scenario where queue is to be shared among all the processors.
geode-core/src/main/java/org/apache/geode/internal/cache/wan/parallel/ParallelGatewaySenderEventProcessor.java