Diese Seite wurde vollständig KI-generiert auf Basis von SWS Safe Hardware Acceleration (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.
[AP_SWS_SHWA_00411] texto ainda não importadoUpstream: RS_SHWA_00006
class AcceleratorSelector : public DeviceSelector {...};
Die Spezifikation definiert diesen Klassentyp mit der gezeigten Schnittstelle.
Avalia e seleciona dispositivos aceleradores de hardware com base em uma estratégia de seletor para aplicações adaptativas.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: ffcb3b3d577eProcedênciaPerguntas em aberto (3)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Avalia e seleciona dispositivos aceleradores de hardware com base em uma estratégia de seletor para aplicações adaptativas.
A classe ara::shwa::AcceleratorSelector serve, no módulo de aceleração de hardware, para a avaliação e seleção de dispositivos aceleradores adequados de acordo com uma estratégia de seletor ([AP_SWS_SHWA_00413]). Por meio de SelectDevice() é possível selecionar diretamente um Device adequado, enquanto operator() viabiliza uma avaliação numérica individual de dispositivos individuais ([AP_SWS_SHWA_00412]). Como ambas as operações estão especificadas como não thread-safe, o uso concorrente requer sincronização externa. Possíveis erros, como recursos ocupados ou funções não suportadas, são reportados sem rollback por meio de ara::core::Result.
Contexto
A classe ara::shwa::AcceleratorSelector atua no módulo shwa (Hardware Acceleration) da AUTOSAR Adaptive Platform como seletor especializado para dispositivos aceleradores de hardware. De acordo com a sintaxe da classe, ela deriva publicamente da interface base DeviceSelector (class AcceleratorSelector : public DeviceSelector). Sua responsabilidade central consiste em avaliar dispositivos aceleradores físicos ou lógicos (Device) segundo uma estratégia de seletor definida ou selecionar um dispositivo adequado ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]).
Entre os parceiros de interação estão a lógica de aplicação de nível superior, que solicita recursos de aceleração para tarefas de computação intensiva, a classe base herdada DeviceSelector bem como as instâncias de Device analisadas ou retornadas pelo seletor. Os próprios critérios de seleção estão encapsulados na implementação concreta da estratégia de seletor ([AP_SWS_SHWA_00413]).
Diagrama de contexto: Enquadramento de AcceleratorSelector na interação com aplicação, DeviceSelector e Device. Fontes: [AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]
Ciclo de vida
A instanciação de AcceleratorSelector deve ocorrer tipicamente de forma específica da aplicação ou por meio de mecanismos de fábrica correspondentes antes da primeira solicitação de dispositivo. Pergunta Q-933e42753f63687c (aberta) A destruição ocorre assim que a lógica de seleção não for mais necessária para o respectivo componente de aplicação; a especificação não prescreve estados intermediários ou fases de ciclo de vida específicos.
Quanto à concorrência, ambas as operações disponibilizadas — SelectDevice() e operator() — estão expressamente especificadas como não thread-safe ("not thread-safe") ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Embora ambos os métodos estejam declarados como const, chamadas concorrentes por meio da mesma instância ou para os mesmos recursos de hardware subjacentes devem ser sincronizadas externamente pelo chamador.
Caminho de utilização
A interação com AcceleratorSelector ocorre por meio de dois caminhos de uso alternativos: a seleção automática direta e a avaliação individual de candidatos. Por meio do método virtual SelectDevice(), a aplicação solicita diretamente a seleção de um dispositivo adequado de acordo com a estratégia implementada ([AP_SWS_SHWA_00413]). Em caso de sucesso, a chamada retorna uma instância de Device encapsulada em um ara::core::Result.
Alternativamente, o operador de chamada sobrecarregado operator() permite a avaliação passo a passo de dispositivos conhecidos individuais ([AP_SWS_SHWA_00412]). O valor inteiro retornado por operator() (int) representa provavelmente uma pontuação relativa de adequação, com base na qual a própria aplicação pode realizar uma classificação ou filtragem. Interpretação: SelectDevice() encapsula a estratégia completa de seleção de forma autônoma, enquanto operator() permite comparações detalhadas de dispositivos individuais. Pergunta Q-e2de44ef0c9e936d (aberta)
Ambas as operações estão declaradas como noexcept e garantem Exception Safety ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Erros são transportados exclusivamente por meio do tipo de retorno ara::core::Result. Estão especificados os seguintes códigos de erro da faixa ShwaErrorCode:
ShwaErrorCode::kResourceBusy: A operação não pôde ser executada porque o respectivo recurso está atualmente ocupado ou sobrecarregado ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]).
ShwaErrorCode::kFeatureNotSupported: Uma propriedade solicitada para a seleção ou avaliação não é suportada pela plataforma ou pelo dispositivo ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]).
Para ambas as funções está estabelecido que não existe semântica de rollback (no_rollback_semantics) ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Caso ocorra um erro, um estado anterior do sistema ou de hardware não é restaurado automaticamente. Os chamadores devem verificar o código de erro do objeto Result e, se necessário, iniciar novas tentativas ou caminhos de seleção alternativos.
Este guia foi gerado por uma IA com base na especificação para AUTOSAR Adaptive R25-11.
Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.
Scope
class ara::shwa::AcceleratorSelector
Thread Safety
not thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safety
exception safe
Errors
ShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported
Request a governed re-review of this record. The record is not changed immediately.
ara::core::Result< int > operator() (const Device &device) const noexcept override;
Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.
Scope
class ara::shwa::AcceleratorSelector
Thread Safety
not thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safety
exception safe
Errors
ShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported
Request a governed re-review of this record. The record is not changed immediately.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão