code: def spawn(self, function, *args, **kwargs):
          # type: (Callable[..., Any], *Any, **Any) -> Spawned
          
          assert self.state != STOPPED, "Can't spawn when process stopped"
          spawned = Spawned(function, args, kwargs)
          self._spawned.append(spawned)
          self._spawn_count += 1
          # Filter out things that are ready to avoid memory leaks
          if self._spawn_count > SPAWN_CLEAR_COUNT:
              self._clear_spawn_list()
          return spawned
docs: Runs the function in a worker thread, returning a Result object
  
          Args:
              function: Function to run
              args: Positional arguments to run the function with
              kwargs: Keyword arguments to run the function with
  
          Returns:
              Spawned: Something you can call wait(timeout) on to see when it's
                  finished executing