class_docstr: Wrapper class for the basic BlueFog API.
class_docstr_tok: ["Wrapper","class","for","the","basic","BlueFog","API","."]
docstr: A function that returns a flag indicating whether MPI multi-threading is supported.
  
  If MPI multi-threading is supported, users may mix and match BlueFog usage with other
  MPI libraries, such as `mpi4py`.
  
  Returns:
      A boolean value indicating whether MPI multi-threading is supported.
docstr_tok: ["A","function","that","returns","a","flag","indicating","whether","MPI","multi-threading","is","supported",".","If","MPI","multi-threading","is","supported",",","users","may","mix","and","match","BlueFog","usage","with","other","MPI","libraries",",","such","as","`","mpi4py","`",".","Returns",":","A","boolean","value","indicating","whether","MPI","multi-threading","is","supported","."]
code: def mpi_threads_supported(self) -> bool:
      """A function that returns a flag indicating whether MPI multi-threading is supported.
  
      If MPI multi-threading is supported, users may mix and match BlueFog usage with other
      MPI libraries, such as `mpi4py`.
  
      Returns:
          A boolean value indicating whether MPI multi-threading is supported.
      """
      mpi_threads_supported = (
          self._MPI_LIB_CTYPES.bluefog_mpi_threads_supported()
      )
      if mpi_threads_supported == -1:
          raise ValueError(
              "BlueFog has not been initialized; use bf.init()."
          )
      return mpi_threads_supported
  
imports: from typing import List, Callable, Optional
  import atexit
  import contextlib
  import ctypes
  import logging
  import networkx
  import bluefog.common.util
  import bluefog.common.topology_util
label_desc: Use image node_id 11 for calling the BlueFogBasics obj's underlying member method code with example usage: obj.mpi_threads_supported() and returns: mpi_threads_supported