Diese Seite wurde vollständig KI-generiert auf Basis von SWS Raw Data Stream (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.
class RdsException : public ara::core::Exception {...};
Exception type for Raw Data Stream.
Header-Datei
#include "ara/rds/rds_error_domain.h"
Scope
namespace ara::rds
User GuideAI-GEGENEREERD
Dient als domeinspecifiek uitzonderingstype voor de foutafhandeling bij bewerkingen op de Raw Data Stream.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: b9745284d7f2HerkomstOpen vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Dient als domeinspecifiek uitzonderingstype voor de foutafhandeling bij bewerkingen op de Raw Data Stream.
De klasse ara::rds::RdsException representeert het gespecialiseerde uitzonderingstype voor de module Raw Data Stream en dient voor het doorgeven van fouten op basis van ara::core::ErrorCode[SWS_RDS_11292]. De instantiëring vindt typisch plaats in het kader van de foutafhandeling door ThrowAsException, waardoor een gestructureerde afbreking van het foutieve proces in gang wordt gezet [SWS_RDS_11297]. Dankzij de als noexcept gedeclareerde constructor is gegarandeerd dat bij het genereren van de uitzondering geen vervolgfouten optreden in het runtime-systeem. Aanroepende applicatiecode moet de uitzondering opvangen om het afbreken van het programma te voorkomen.
Context
De klasse ara::rds::RdsException fungeert in de context van AUTOSAR Adaptive als een specifiek uitzonderingstype voor de Raw Data Stream (rds), zoals gespecificeerd in SWS RawDataStream §1 “Raw Data Stream”. Deze is direct afgeleid van de algemene basisklasse ara::core::Exception en integreert het foutmodel van de module naadloos in de uitzonderingsafhandeling van het platform. Binnen de RDS-naamruimte wordt het type beschikbaar gesteld via de type-alias Exception[SWS_RDS_11327], wat voor gebruikers en modulecomponenten een uniforme en vereenvoudigde nomenclatuur mogelijk maakt. Als primaire interactiepartners treden foutdomeinen op, zoals het in ara/rds/rds_error_domain.h gedeclareerde domein, evenals applicatiecode die fouten via uitzonderingen afhandelt [SWS_RDS_11292].
Levenscyclus
Instanties van ara::rds::RdsException worden naar behoefte gegenereerd zodra een opgetreden foutgebeurtenis het afbreken van de reguliere controlestroom afdwingt. De instantiëring vindt plaats via een expliciete constructor die een ara::core::ErrorCode-object accepteert [SWS_RDS_11292]. Deze constructor is gedeclareerd als noexcept, waardoor gegarandeerd is dat de objectcreatie zelf onder geen beding mislukt of een verdere uitzondering veroorzaakt. Het uitzonderingsobject is onderworpen aan de reguliere C++-waardesemantiek: het wordt bij het opwerpen overgedragen aan het exception-geheugen van de runtime-omgeving. Zoals gebruikelijk bij uitzonderingstypes in ara::core, is het tijdstip van vernietiging vermoedelijk gebonden aan het verlaten van het verantwoordelijke catch-blok, zodra de referentie naar het uitzonderingsobject vervalt. Vraag Q-5673ede6a9688b85 (open) In omgevingen met gelijktijdige uitvoering gedraagt de klasse zich thread-safe, aangezien elke uitzonderingssituatie op thread-lokaal niveau geïsoleerd wordt geïnstantieerd en gepropageerd.
Gebruikspad
Het typische gebruikspad omvat de detectie van een fouttoestand in het stream-bedrijf, de omzetting van de foutcode naar een uitzondering en het daaropvolgende opvangen in de applicatiecode. Treedt tijdens een bewerking een fout op, dan wordt deze primair gerepresenteerd als ara::core::ErrorCode. In plaats van een handmatige controle kan het opwerpen van de uitzondering worden geïnitieerd via de methode ThrowAsException, die de omzetting en het opwerpproces inkapselt [SWS_RDS_11297]. Interpretatie: De aanroep van ThrowAsException delegeert intern vermoedelijk rechtstreeks naar de constructor van RdsException en werpt de nieuw gegenereerde instantie op middels throw[SWS_RDS_11292]. Vraag Q-d8734426a5c71e07 (open) De aanroepende code vangt de uitzondering op via het concrete type ara::rds::RdsException, de alias ara::rds::Exception[SWS_RDS_11327] of polymorf via ara::core::Exception.
Sequentiediagram: Samenspel bij het opwerpen en opvangen van een RDS-uitzondering via een ErrorCode. Bronnen: [SWS_RDS_11292], [SWS_RDS_11297].
Foutscenario's
Foutscenario's rond ara::rds::RdsException betreffen vooral de consistentie van de foutvoortplanting en het vermijden van niet-afgehandelde programma-afbrekingen. De opwerpoperatie ThrowAsException is expliciet gedefinieerd als noexcept(false)[SWS_RDS_11297], aangezien het opwerpen van de uitzondering het beoogde gedrag bij fouten vormt. Een kritiek foutscenario ontstaat wanneer aanroepende code de potentiële afbreking van de controlestroom negeert en geen geschikte uitzonderingshandler levert; een onvolledige afhandeling leidt tot het onmiddellijk beëindigen van het proces via std::terminate. Door de noexcept-garantie van de constructor [SWS_RDS_11292] is echter gewaarborgd dat bij het gereedmaken van de uitzondering zelf geen geneste initialisatiefout kan optreden.
Deze handleiding is gebaseerd op de eisen van de AUTOSAR-specificatie voor Raw Data Stream (R25-11).
gemini-3.8-flash-low· 2026-10-13 · Duits origineel