code: def reset_pool_external_address(
      self,
      process_index: int,
      external_address: Union[str, List[str]],
  ):
      if not isinstance(external_address, list):
          external_address = [external_address]
      cur_pool_config = self._conf["pools"][process_index]
      internal_address = cur_pool_config["internal_address"]
  
      mapping: Dict = self._conf["mapping"]
      for addr in cur_pool_config["external_address"]:
          if internal_address == addr:
              # internal address may be the same as external address in Windows
              internal_address = external_address[0]
          mapping.pop(addr, None)
  
      cur_pool_config["external_address"] = external_address
      for addr in external_address:
          mapping[addr] = internal_address
  
file_path: mars/mars/oscar/backends/config.py
imports: from typing import Union, List, Dict, Any
label_desc: Use image node_id 8 for calling the ActorPoolConfig obj's underlying member method code with example usage: obj.reset_pool_external_address(process_index, external_address) without return types