code: public static synchronized ModbusSlave createTCPSlave(InetAddress address, int port, int poolSize, boolean useRtuOverTcp) throws ModbusException {
          String key = ModbusSlaveType.TCP.getKey(port);
          if (slaves.containsKey(key)) {
              return slaves.get(key);
          }
          else {
              ModbusSlave slave = new ModbusSlave(address, port, poolSize, useRtuOverTcp);
              slaves.put(key, slave);
              return slave;
          }
      }
docs: Creates a TCP modbus slave or returns the one already allocated to this port
  
  @param address       IP address to listen on
  @param port          Port to listen on
  @param poolSize      Pool size of listener threads
  @param useRtuOverTcp True if the RTU protocol should be used over TCP
  @return new or existing TCP modbus slave associated with the port
  
  @throws ModbusException If a problem occurs e.g. port already in use