class_docstr: Gets status for many Celery tasks using the best method available.
  
  If BaseKeyValueStoreBackend is used as result backend, the mget method is used.
  If DatabaseBackend is used as result backend, the SELECT ...WHERE task_id IN (...) query is used
  Otherwise, multiprocessing.Pool will be used. Each task status will be downloaded individually.
class_docstr_tok: ["Gets","status","for","many","Celery","tasks","using","the","best","method","available",".","If","BaseKeyValueStoreBackend","is","used","as","result","backend",",","the","mget","method","is","used",".","If","DatabaseBackend","is","used","as","result","backend",",","the","SELECT","...","WHERE","task_id","IN","(","...",")","query","is","used","Otherwise",",","multiprocessing.Pool","will","be","used",".","Each","task","status","will","be","downloaded","individually","."]
code: def _tasks_list_to_task_ids(self, async_tasks) -> set[str]:
      return {a.task_id for a in async_tasks}
  
imports: from __future__ import annotations
  import contextlib
  import logging
  import math
  import os
  import subprocess
  import traceback
  import warnings
  from concurrent.futures import ProcessPoolExecutor
  from typing import TYPE_CHECKING, Any, Mapping, MutableMapping, Optional, Tuple
  from celery import Celery, Task, states
  from celery.backends.base import BaseKeyValueStoreBackend
  from celery.backends.database import DatabaseBackend, Task, retry, session_cleanup
  from celery.signals import import_modules
  from setproctitle import setproctitle
  from sqlalchemy import select
  import airflow.settings
  from airflow.configuration import conf
  from airflow.exceptions import AirflowException, RemovedInAirflow3Warning
  from airflow.executors.base_executor import BaseExecutor
  from airflow.stats import Stats
  from airflow.utils.dag_parsing_context import _airflow_parsing_context_manager
  from airflow.utils.log.logging_mixin import LoggingMixin
  from airflow.utils.net import get_hostname
  from airflow.utils.providers_configuration_loader import providers_configuration_loaded
  from airflow.utils.timeout import timeout
label_desc: Use image node_id 2 for calling the BulkStateFetcher obj's underlying member method code with example usage: obj._tasks_list_to_task_ids(async_tasks) and returns: unknown