def run(fcn, tasks, return_results=True, num_workers=None, progress=None):
    """Applies the given function to each element of the given tasks.

    Args:
        fcn: a function that accepts a single argument
        tasks: an iterable of function arguments
        return_results (True): whether to return the function results
        num_workers (None): a suggested number of threads to use
        progress (None): whether to render a progress bar (True/False), use the
            default value ``fiftyone.config.show_progress_bars`` (None), or a
            progress callback function to invoke instead

    Returns:
        the list of function outputs, or None if ``return_results == False``
    """
    return _run(
        fcn,
        tasks,
        return_results=return_results,
        num_workers=num_workers,
        progress=progress,
    )
Applies the given function to each element of the given tasks.

    Args:
        fcn: a function that accepts a single argument
        tasks: an iterable of function arguments
        return_results (True): whether to return the function results
        num_workers (None): a suggested number of threads to use
        progress (None): whether to render a progress bar (True/False), use the
            default value ``fiftyone.config.show_progress_bars`` (None), or a
            progress callback function to invoke instead

    Returns:
        the list of function outputs, or None if ``return_results == False``
    
fiftyone/core/storage.py