структура ara::diag::GenericDiagnosticSovdOperation::StartAsynchronousExecutionResponse
struct StartAsynchronousExecutionResponse {...};
Start Execution response in case of asynchronous operation .
| Header-Datei | #include "ara/diag/generic_diagnostic_sovd_operation.h" |
|---|---|
| Forwarding-Header | #include "ara/diag/diag_fwd.h" |
| Scope | class ara::diag::GenericDiagnosticSovdOperation |
Руководство пользователяСОЗДАНО ИИ
Служит структурой возврата при запуске асинхронно выполняемой диагностической операции SOVD.
Служит структурой возврата при запуске асинхронно выполняемой диагностической операции SOVD.
Структура ara::diag::GenericDiagnosticSovdOperation::StartAsynchronousExecutionResponse служит в AUTOSAR Adaptive Platform типом ответа при запуске асинхронно выполняемой диагностической операции SOVD [SWS_DM_02209]. Она инстанцируется приложением и возвращается в Diagnostic Management как вариант внутри ara::core::Future, если операция продолжается в фоновом режиме AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». Перед вызовом должна быть успешно пройдена проверка Proximity Challenge, если таковая требуется. Затем Diagnostic Management формирует асинхронный ответ клиенту SOVD на основе этого отклика.
Контекст
Структура данных ara::diag::GenericDiagnosticSovdOperation::StartAsynchronousExecutionResponse служит в функциональном кластере Diagnostic Management (DM) типом возврата для асинхронного запуска диагностической операции SOVD [SWS_DM_02209]. Для каждой сконфигурированной операции типа DiagnosticSovdOperationStart экземпляр Diagnostic Server предоставляет метод SOVD для запуска операции согласно ASAM SOVD [SWS_DM_01396]. Как только клиент запрашивает выполнение операции по протоколу SOVD, Diagnostic Management перенаправляет этот вызов интерфейсу ara::diag::GenericDiagnosticSovdOperation::StartExecution [SWS_DM_02174].
В рамках этого процесса StartAsynchronousExecutionResponse выступает в качестве объекта ответа специфичного для приложения диагностического обработчика (Handler) для Diagnostic Management. В то время как синхронные операции получают ответ через StartSynchronousExecutionResponse [SWS_DM_02176], возврат StartAsynchronousExecutionResponse сигнализирует о том, что фактическая диагностическая обработка продолжается как фоновая задача, а непосредственный отклик клиенту SOVD лишь подтверждает успешное инициирование AUTOSAR_AP_SWS_Diagnostics §7.3.3.5.5.5 «Operations – Start execution of an operation».
Жизненный цикл
Создание StartAsynchronousExecutionResponse выполняется конкретной реализацией сервисного интерфейса при выполнении StartExecution AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». Если обработчик решает, что запрошенная операция должна обрабатываться асинхронно, он инстанцирует структуру и инкапсулирует ее в ara::core::Variant<StartSynchronousExecutionResponse, StartAsynchronousExecutionResponse>.
Этот вариант разрешается через ara::core::Promise и передается в Diagnostic Management как ara::core::Future AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». С разрешением Future владение структурой переходит к Diagnostic Management. Интерпретация: экземпляр StartAsynchronousExecutionResponse, вероятно, отбрасывается после обработки со стороны Diagnostic Management, как только сообщение ответа SOVD сформировано и отправлено внешнему клиенту. Вопрос Q-3977fae99e62957e (открытый) Дальнейшая обработка диагностической задачи продолжается параллельно в контексте приложения.
Путь использования
Стандартный процесс начинается с поступления в Diagnostic Server SOVD-запроса на запуск операции [SWS_DM_01396]. После успешной предварительной проверки Diagnostic Management вызывает метод StartExecution зарегистрированного обработчика [SWS_DM_02174]. При этом передаются имя операции, входные данные, метаинформация, а также ara::diag::CancellationHandler AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution».
Обработчик запускает асинхронный фоновый процесс, создает структуру StartAsynchronousExecutionResponse [SWS_DM_02209] и возвращает ее в ara::core::Future. Diagnostic Management извлекает объект и преобразует отклик в соответствующий стандарту асинхронный ответ SOVD клиенту.
Диаграмма последовательности: асинхронный запуск операции SOVD через StartAsynchronousExecutionResponse. Источники: [SWS_DM_01396], [SWS_DM_02174], [SWS_DM_02209], AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution».
Сценарии ошибок
Центральным предусловием для вызова метода является авторизация: при необходимости перед вызовом StartExecution должна быть успешно пройдена валидация Proximity Challenge [SWS_DM_02174]. Если она завершается неудачно, вызов обработчика не происходит и StartAsynchronousExecutionResponse не создается.
Для обработки отмен во время текущего выполнения система предоставляет ara::diag::CancellationHandler AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». Если до возврата Future в обработчике возникает ошибка, приложение может завершить Future с состоянием ошибки, чтобы недопустимая структура ответа не обрабатывалась дальше.
Настоящее руководство по классу основано на релизе AUTOSAR R25-11 и создано автоматически.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал