Перейти к содержанию

AsyncTaskExecutor

Async Task Executor.

AsyncTaskExecutor

Bases: BaseTaskExecutor, AsyncPluginMixin

AsyncTaskExecutor - Синхронный класс исполнителя задач. Используется по умолчанию в AsyncWorker.

Пример

import asyncio
from qtasks.executors import AsyncTaskExecutor

task_func = TaskExecSchema(...)
task_broker = TaskPrioritySchema(...)
executor = AsyncTaskExecutor(task_func, task_broker)
result = asyncio.run(executor.execute())

__init__(task_func, task_broker, middlewares=None, log=None, plugins=None)

Инициализация класса. Происходит внутри Worker перед обработкой задачи.

Parameters:

Name Type Description Default
task_func TaskExecSchema

Схема TaskExecSchema.

required
task_broker TaskPrioritySchema

Схема TaskPrioritySchema.

required
middlewares List[Type[TaskMiddleware]]

description. По умолчанию None.

None
log Logger

класс qtasks.logs.Logger. По умолчанию: qtasks._state.log_main.

None

after_execute() async

Вызов после запуска задач.

before_execute() async

Вызывается перед выполнением задачи.

decode() async

Декодирование задачи.

Returns:

Name Type Description
Any Any

Результат задачи.

execute(decode=True) async

Вызов задачи.

Parameters:

Name Type Description Default
decode bool

Декодирование результата задачи. По умолчанию: True.

True

Returns:

Type Description
Any | str

Any|str: Результат задачи.

execute_middlewares() async

Вызов мидлварей.

run_task() async

Вызов задачи.

Returns:

Name Type Description
Any Any

Результат задачи.

run_task_gen(func) async

Вызов генератора задачи.

Parameters:

Name Type Description Default
func FunctionType

Функция.

required

Returns:

Name Type Description
Any list[Any]

Результат задачи.