code: @Override
      protected void updateCount() {
          // set counter to the actual value, rather than to try and
          // keep track with a seperate variable.
          // This counter must only be updated by the selector thread,
          // which allows us to omit synchronized logic.
          // there can be timing windows where before we signal a deletion,
          // another request comes in, but the timeout logic will insure
          // that we don't delete an active selector.
          final int selectorCount = selector.keys().size();
          if (selectorCount > 0) {
              // if any keys, don't let selector die
              waitingToQuit = false;
          }
          wqm.updateCount(countIndex, selectorCount, channelType);
      }
docs: /*
  @see com.ibm.ws.tcpchannel.internal.ChannelSelector#updateCount()