class_docstr: `OperatorPool` manages `Operator` creation, acquisition, release, and garbage
  collection. Each `TaskExecutor` has one `OperatorPool`.
class_docstr_tok: ["`","OperatorPool","`","manages","`","Operator","`","creation",",","acquisition",",","release",",","and","garbage","collection",".","Each","`","TaskExecutor","`","has","one","`","OperatorPool","`","."]
docstr: Instruct the `OperatorPool` to reserve and return the
  specified operator for use in the executor.
  
  Args:
      key: (`str`)
      hub_op_id: (`str`)
      op_args: (`List`)
          Operator init parameters with args
      op_kws: (`Dict[str, any]`)
          Operator init parameters with kwargs
      tag: (`str`)
          The tag of operator
      latest (`bool`):
          Whether to download the latest files.
  
  Returns:
      (`towhee.operator.Operator`)
          The operator instance reserved for the caller.
docstr_tok: ["Instruct","the","`","OperatorPool","`","to","reserve","and","return","the","specified","operator","for","use","in","the","executor",".","Args",":","key",":","(","`","str","`",")","hub_op_id",":","(","`","str","`",")","op_args",":","(","`","List","`",")","Operator","init","parameters","with","args","op_kws",":","(","`","Dict","[","str",",","any","]","`",")","Operator","init","parameters","with","kwargs","tag",":","(","`","str","`",")","The","tag","of","operator","latest","(","`","bool","`",")",":","Whether","to","download","the","latest","files",".","Returns",":","(","`","towhee.operator.Operator","`",")","The","operator","instance","reserved","for","the","caller","."]
code: def acquire_op(
      self,
      key,
      hub_op_id: str,
      op_args: List,
      op_kws: Dict[str, any],
      tag: str,
      latest: bool,
  ) -> Operator:
      """
      Instruct the `OperatorPool` to reserve and return the
      specified operator for use in the executor.
  
      Args:
          key: (`str`)
          hub_op_id: (`str`)
          op_args: (`List`)
              Operator init parameters with args
          op_kws: (`Dict[str, any]`)
              Operator init parameters with kwargs
          tag: (`str`)
              The tag of operator
          latest (`bool`):
              Whether to download the latest files.
  
      Returns:
          (`towhee.operator.Operator`)
              The operator instance reserved for the caller.
      """
  
      # Load the operator if the computed key does not exist in the operator
      # dictionary.
      with self._lock:
          storage = self._all_ops.get(key, None)
          if storage is None:
              storage = _OperatorStorage()
              self._all_ops[key] = storage
  
          if not storage.op_available():
              op = self._op_loader.load_operator(
                  hub_op_id, op_args, op_kws, tag, latest
              )
              storage.put(op, True)
              op.key = key
          return storage.get()
  
file_path: towhee/towhee/runtime/operator_manager/operator_pool.py
imports: from typing import Dict, List
  import threading
  from towhee.operator import Operator, SharedType
  from .operator_loader import OperatorLoader
label_desc: Use image node_id 4 for calling the OperatorPool obj's underlying member method code with example usage: obj.acquire_op(key, hub_op_id, op_args, op_kws, tag, latest) and returns: storage