'Asynchronously deletes a Task or list of Tasks in this Queue.
This function is identical to delete_tasks() except that it returns an
asynchronous object. You can call get_result() on the return value to block
on the call.
Args:
task: A Task instance or a list of Task instances that will be deleted
from the Queue.
rpc: An optional UserRPC object.
Returns:
A UserRPC object, call get_result to complete the RPC and obtain the Task
or list of tasks passed into this call.
Raises:
BadTaskStateError: if the Task(s) to be deleted do not have task names or
have already been deleted.
DuplicateTaskNameError: if a Task is repeated in the request.'

def delete_tasks_async(self, task, rpc=None):

    try:
        tasks = list(iter(task))
    except TypeError:
        tasks = [task]
        multiple = False
    else:
        multiple = True
    return self.__DeleteTasks(tasks, multiple, rpc)
