class_docstr: Specify the compute strategy for a Dataset transform.
  
  ActorPoolStrategy specifies that an autoscaling pool of actors should be used
  for a given Dataset transform. This is useful for stateful setup of callable
  classes.
  
  For a fixed-sized pool of size ``n``, specify ``compute=ActorPoolStrategy(size=n)``.
  To autoscale from ``m`` to ``n`` actors, specify
  ``ActorPoolStrategy(min_size=m, max_size=n)``.
  
  To increase opportunities for pipelining task dependency prefetching with
  computation and avoiding actor startup delays, set max_tasks_in_flight_per_actor
  to 2 or greater; to try to decrease the delay due to queueing of tasks on the worker
  actors, set max_tasks_in_flight_per_actor to 1.
code: def __eq__(self, other: Any) -> bool:
      return isinstance(other, ActorPoolStrategy) and (
          self.min_size == other.min_size
          and self.max_size == other.max_size
          and self.max_tasks_in_flight_per_actor
          == other.max_tasks_in_flight_per_actor
      )
  
imports: import collections
  import logging
  import math
  from typing import Any, Callable, Dict, Iterable, List, Optional, Tuple, TypeVar, Union
  import ray
  from ray.data._internal.block_list import BlockList
  from ray.data._internal.delegating_block_builder import DelegatingBlockBuilder
  from ray.data._internal.execution.interfaces import TaskContext
  from ray.data._internal.progress_bar import ProgressBar
  from ray.data._internal.remote_fn import cached_remote_fn
  from ray.data.block import Block, BlockAccessor, BlockExecStats, BlockMetadata, BlockPartition, CallableClass, UserDefinedFunction
  from ray.data.context import DataContext
  from ray.types import ObjectRef
  from ray.util.annotations import DeveloperAPI, PublicAPI
label_desc: Use image node_id 3 for calling the ActorPoolStrategy obj's underlying member method code with example usage: obj.__eq__(other) and returns: unknown