docs: public void setConcurrencyLimit(int maxConcurrency)
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(this, tc, "setConcurrencyLimit", Integer.valueOf(maxConcurrency));
  
      boolean resumeConsumers = false;
      
      if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
        SibTr.debug(tc, "maxActiveMessagePrepareWriteLock.lock(): " + maxActiveMessagePrepareLock);
      
      // Fully lock down the active message counting
      maxActiveMessagePrepareWriteLock.lock();
      
      try
      {
        synchronized(maxActiveMessageLock)
        {
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
            SibTr.debug(tc, "Inital active Messages: current: " + currentActiveMessages +
                              ", prepared: " + preparedActiveMessages +
                              ", maximum: " + maxActiveMessages +
                              " (suspended: " + consumerSetSuspended + ")");
          
          // A value of zero indicates no maximum
          if(maxConcurrency == 0)
          {
            maxActiveMessages = Integer.MAX_VALUE;
            resumeThreshold = Integer.MAX_VALUE;
          }
          else
          {
            maxActiveMessages = maxConcurrency;
            
            // Set the resumeThreshold to 80% of this value.
            float res = (maxActiveMessages * 8);
            res = Math.round(res / 10);
            this.resumeThreshold = (int) res;
          }
          
          // Check that changing the limit doesn't change our current
          // suspend state
          if(currentActiveMessages > maxActiveMessages)
            consumerSetSuspended = true;
          else if(consumerSetSuspended && (currentActiveMessages < resumeThreshold))
          {
            consumerSetSuspended = false;
            resumeConsumers = true;
          }
        } // synchronized
      }
      finally
      {
        maxActiveMessagePrepareWriteLock.unlock();
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
          SibTr.debug(tc, "maxActiveMessagePrepareWriteLock.unlock(): " + maxActiveMessagePrepareLock);
      }
      
      // We may have caused the set to be resumed - wakeup any suspended
      // members of the set.
      if(resumeConsumers)
        resumeConsumers();
      
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(this, tc, "setConcurrencyLimit");    
    }