estrutura 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 |
Guia do utilizadorGERADO POR IA
Serve como estrutura de retorno ao iniciar uma operação de diagnóstico SOVD executada de forma assíncrona.
Serve como estrutura de retorno ao iniciar uma operação de diagnóstico SOVD executada de forma assíncrona.
A estrutura ara::diag::GenericDiagnosticSovdOperation::StartAsynchronousExecutionResponse serve na AUTOSAR Adaptive Platform como tipo de resposta ao iniciar uma operação de diagnóstico SOVD de execução assíncrona [SWS_DM_02209]. É instanciada pela aplicação e devolvida como variante dentro de um ara::core::Future ao Diagnostic Management, quando uma operação prossegue em segundo plano AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». Antes da chamada, qualquer verificação de proximity challenge necessária tem de ter sido concluída com sucesso. Em seguida, o Diagnostic Management gera, com base nesta resposta, a resposta assíncrona para o cliente SOVD.
Contexto
A estrutura de dados ara::diag::GenericDiagnosticSovdOperation::StartAsynchronousExecutionResponse serve no cluster funcional Diagnostic Management (DM) como tipo de retorno para o início assíncrono de uma operação de diagnóstico SOVD [SWS_DM_02209]. Para cada operação configurada do tipo DiagnosticSovdOperationStart, a instância do Diagnostic Server disponibiliza o método SOVD para iniciar uma operação de acordo com o ASAM SOVD [SWS_DM_01396]. Assim que um cliente solicita a execução de uma operação através do protocolo SOVD, o Diagnostic Management encaminha esta chamada para a interface ara::diag::GenericDiagnosticSovdOperation::StartExecution [SWS_DM_02174].
Dentro deste fluxo, StartAsynchronousExecutionResponse atua como objeto de resposta do manipulador de diagnóstico específico da aplicação para o Diagnostic Management. Enquanto as operações síncronas são respondidas através de StartSynchronousExecutionResponse [SWS_DM_02176], o retorno de StartAsynchronousExecutionResponse sinaliza que o processamento de diagnóstico propriamente dito continua como tarefa em segundo plano e que o retorno imediato ao cliente SOVD apenas confirma a iniciação bem-sucedida AUTOSAR_AP_SWS_Diagnostics §7.3.3.5.5.5 «Operations – Start execution of an operation».
Ciclo de vida
A criação de StartAsynchronousExecutionResponse é realizada pela implementação concreta da interface de serviço aquando da execução de StartExecution AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». Se o manipulador decidir que a operação solicitada deve ser processada de forma assíncrona, instancia a struct e encapsula-a num ara::core::Variant<StartSynchronousExecutionResponse, StartAsynchronousExecutionResponse>.
Este variant é resolvido através de um ara::core::Promise e transferido como ara::core::Future para o Diagnostic Management AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». Com a resolução do future, a posse da estrutura passa para o Diagnostic Management. Interpretação: a instância de StartAsynchronousExecutionResponse deverá ser descartada após avaliação pelo Diagnostic Management, assim que a mensagem de resposta SOVD para o cliente externo tiver sido gerada e enviada. Pergunta Q-3977fae99e62957e (aberta) O processamento posterior da tarefa de diagnóstico continua em paralelo no contexto da aplicação.
Caminho de utilização
O fluxo regular começa com a receção de um pedido SOVD no Diagnostic Server para iniciar uma operação [SWS_DM_01396]. Após uma pré-verificação bem-sucedida, o Diagnostic Management chama o método StartExecution do manipulador registado [SWS_DM_02174]. Neste processo, são transmitidos o nome da operação, os dados de entrada, metainformações, bem como um ara::diag::CancellationHandler AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution».
O manipulador inicia o processo assíncrono em segundo plano, cria a estrutura StartAsynchronousExecutionResponse [SWS_DM_02209] e devolve-a no ara::core::Future. O Diagnostic Management extrai o objeto e transforma a resposta na resposta SOVD assíncrona em conformidade com a norma para o cliente.
Diagrama de sequência: início assíncrono de uma operação SOVD através de StartAsynchronousExecutionResponse. Fontes: [SWS_DM_01396], [SWS_DM_02174], [SWS_DM_02209], AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution».
Cenários de erro
Uma pré-condição central para a chamada do método é a autorização: se necessário, uma validação do proximity challenge tem de ter sido aprovada com sucesso antes da chamada de StartExecution [SWS_DM_02174]. Se esta falhar, a chamada do manipulador não ocorre e não é gerada nenhuma StartAsynchronousExecutionResponse.
Para o tratamento de cancelamentos durante a execução em curso, o sistema disponibiliza um ara::diag::CancellationHandler AUTOSAR_AP_SWS_Diagnostics §8.62 «StartExecution». Se ocorrer um erro no manipulador antes do retorno do future, a aplicação pode terminar o future com um estado de erro, de modo que nenhuma estrutura de resposta válida seja processada posteriormente.
Este guia de classe baseia-se na versão R25-11 do AUTOSAR e foi gerado automaticamente.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão