docs: @Override
      public void stop(long millisec) {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.entry(tc, "stop (" + millisec + ") " + getExternalName());
          }
          // Stop accepting new connections on the inbound channels
          if (!this.preparingToStop && acceptReqProcessor.get() != null && this.config.isInbound()) {
              acceptReqProcessor.get().removePort(this.endPoint);
              // PK60924 - stop the listening port now
              this.endPoint.destroyServerSocket();
              Tr.info(tc, TCPChannelMessageConstants.TCP_CHANNEL_STOPPED, getExternalName(), this.displayableHostName, String.valueOf(this.endPoint.getListenPort()));
              this.preparingToStop = true;
              // d247139 don't null acceptReqProcessor here,
              // need it for processing a subsequent "start"
          }
  
          // only stop the channel if millisec is 0, otherwise ignore.
          if (millisec == 0) {
              this.preparingToStop = false;
              this.stopFlag = true; // don't allow any further processing
              // destroy all the "in use" TCPConnLinks. This should close all
              // the sockets held by these connections.
              destroyConnLinks();
          }
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.exit(tc, "stop");
          }
      }