(
        self,
        task_id: TaskID,
        func: Callable[..., Awaitable[R]],
        args: Sequence[Any],
        kwargs: Dict[str, Any],
    )
Given a task, return a queue ID that it should be sent to.

        `func`, `args` and `kwargs` are just the exact same arguments
        that `queue_work` takes, not every scheduler would be benefit from this.
        Example that they would be useful, highly customized schedule may want
        to schedule according to function/arguments weights.
Given a task, return a queue ID that it should be sent to.
Given a task return a queue ID that it should be sent to .
def schedule_task(
        self,
        task_id: TaskID,
        func: Callable[..., Awaitable[R]],
        args: Sequence[Any],
        kwargs: Dict[str, Any],
    ) -> QueueID:
        """
        Given a task, return a queue ID that it should be sent to.

        `func`, `args` and `kwargs` are just the exact same arguments
        that `queue_work` takes, not every scheduler would be benefit from this.
        Example that they would be useful, highly customized schedule may want
        to schedule according to function/arguments weights.
        """
def schedule_task ( self , task_id : TaskID , func : Callable [ ... , Awaitable [ R ] ] , args : Sequence [ Any ] , kwargs : Dict [ str , Any ] , ) -> QueueID :