DEENESPTFRRUARHIKOZHNL

क्लास ara::per::PerException

[SWS_PER_00354] Upstream: RS_AP_00122, RS_AP_00127

class PerException :            public ara::core::Exception {...};

Exception type thrown by Persistency.

Header-Datei#include "ara/per/per_error_domain.h"
Forwarding-Header#include "ara/per/per_fwd.h"
Scopenamespace ara::per
Basisklasse(n)ara::core::Exception

उपयोगकर्ता गाइडएआई जनित

एक विशिष्ट त्रुटि कोड का उपयोग करके दृढ़ता मॉड्यूल से त्रुटियों के एनकैप्सुलेशन और सिग्नलिंग का कार्य करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: abab05ca22f0 उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

एक विशिष्ट त्रुटि कोड का उपयोग करके दृढ़ता मॉड्यूल से त्रुटियों के एनकैप्सुलेशन और सिग्नलिंग का कार्य करता है।

वर्ग ara::per::PerException AUTOSAR Adaptive Platform में दृढ़ता मॉड्यूल से त्रुटियों को संकेतित करने के लिए एक विशिष्ट अपवाद प्रकार के रूप में कार्य करता है। यह हेडर ara/per/per_error_domain.h के माध्यम से प्रदान किया जाता है और बेस क्लास ara::core::Exception [SWS_PER_00355] से इनहेरिट करता है। इंस्टेंसिएशन स्पष्ट रूप से एक ara::core::ErrorCode पास करके किया जाता है, जो ठोस त्रुटि कारण को समाहित करता है। कंस्ट्रक्टर को noexcept के रूप में घोषित करने से, निर्माण पूरी तरह से अपवाद-सुरक्षित होने के साथ-साथ थ्रेड-सुरक्षित निर्दिष्ट है [SWS_PER_00355]।

संदर्भ

वर्ग ara::per::PerException रिलीज़ R25-11 में AUTOSAR Adaptive Platform के भीतर दृढ़ता के कार्यात्मक क्लस्टर (मॉड्यूल per) के लिए केंद्रीय, विशिष्ट अपवाद प्रकार के रूप में कार्य करता है। अपने औपचारिक सिंटैक्स के अनुसार, वर्ग सार्वजनिक रूप से सामान्य बेस अपवाद ara::core::Exception से प्राप्त होता है। इसका प्राथमिक उत्तरदायित्व दृढ़ता सबसिस्टम से गंभीर या सीधे नियमित रिटर्न मानों के माध्यम से नियंत्रित न होने वाली त्रुटि स्थितियों को उच्च-स्तरीय एप्लिकेशन परतों को संकेतित करना है। वर्ग को हेडर ara/per/per_error_domain.h [SWS_PER_00355] में परिभाषित किया गया है। आर्किटेक्चर में, यह प्लेटफ़ॉर्म के त्रुटि प्रबंधन बुनियादी ढांचे के साथ निकटता से इंटरैक्ट करता है, जिसमें प्रत्येक इंस्टेंस सटीक त्रुटि निदान के लिए एक ara::core::ErrorCode का वहन करता है [SWS_PER_00355]।

जीवनचक्र

ara::per::PerException ऑब्जेक्ट का जीवन चक्र सीधे दृढ़ता ऑपरेशनों के भीतर किसी त्रुटि का पता लगाने और अग्रेषित करने से जुड़ा होता है। इंस्टेंसिएशन एक स्पष्ट कंस्ट्रक्टर के माध्यम से होता है जो ara::core::ErrorCode प्रकार का ठीक एक पैरामीटर स्वीकार करता है [SWS_PER_00355]। यह कंस्ट्रक्टर त्रुटि कोड से अंतर्निहित प्रकार रूपांतरणों को रोकने के लिए explicit के रूप में घोषित किया गया है, और विनिर्देश noexcept [SWS_PER_00355] के साथ प्रदान किया गया है। यह सुनिश्चित करता है कि अपवाद ऑब्जेक्ट के निर्माण के दौरान कोई अन्य अपवाद नहीं हो सकता है; इस प्रकार निर्माण पूरी तरह से अपवाद-सुरक्षित (exception safe) है [SWS_PER_00355]।

समवर्तीता के संबंध में, ara::per::PerException का निर्माण थ्रेड-सुरक्षित (thread-safe) के रूप में निर्दिष्ट है [SWS_PER_00355]। कंस्ट्रक्टर को कॉल करने के बाद, ऑब्जेक्ट को कॉल स्टैक के साथ फेंक दिया जाता है। स्वामित्व और विनाश अपवाद प्रबंधन के लिए मानक C++ नियमों का पालन करते हैं: ऑब्जेक्ट रनटाइम सिस्टम के मेमोरी क्षेत्र में तब तक बना रहता है जब तक कि पकड़ने वाला catch ब्लॉक समाप्त नहीं हो जाता, और फिर नियतात्मक रूप से नष्ट हो जाता है।

उपयोग पथ

ara::per::PerException का उपयोग करते समय सामान्य प्रवाह को निम्नलिखित चरणों में विभाजित किया गया है:

  • त्रुटि पहचान और कोड निर्माण: दृढ़ता मॉड्यूल एक अमान्य स्थिति या स्टोरेज ऑपरेशन की विफलता की पहचान करता है और इसे एक संबंधित ara::core::ErrorCode में मैप करता है।
  • इंस्टेंसिएशन: इस त्रुटि कोड को पास करके, अपवाद ऑब्जेक्ट स्पष्ट रूप से PerException(errorCode) [SWS_PER_00355] के माध्यम से बनाया जाता है।
  • अपवाद को ट्रिगर करना: दृढ़ता सबसिस्टम प्रभावित फ़ंक्शन इंटरफ़ेस से अपवाद इंस्टेंस को फेंकता है।
  • पकड़ना और मूल्यांकन: कॉलिंग एप्लिकेशन ऑब्जेक्ट को विशेष रूप से ara::per::PerException के रूप में या बहुरूपी रूप से ara::core::Exception या std::exception के रूप में पकड़ता है। Interpretation: एप्लिकेशन को तब बेस क्लास से विरासत में मिले एक्सेस विधियों के माध्यम से एनकैप्सुलेटेड ara::core::ErrorCode को पढ़ना चाहिए ताकि लक्षित त्रुटि निवारण उपाय शुरू किए जा सकें। प्रश्न Q-6e48fd125d9938d8 (खुला)

त्रुटि परिदृश्य

चूंकि ara::per::PerException त्रुटियों के प्रतिनिधित्व के लिए कार्य करता है, त्रुटि परिदृश्यों में ऑब्जेक्ट निर्माण की मजबूती और त्रुटि जानकारी की अखंडता सबसे आगे होती है। एक आवश्यक पूर्व शर्त के रूप में, कंस्ट्रक्टर को इनपुट पैरामीटर के रूप में एक मान्य ara::core::ErrorCode की आवश्यकता होती है [SWS_PER_00355]। चूंकि कंस्ट्रक्टर को noexcept घोषित किया गया है, यह बाहर रखा गया है कि त्रुटि रिपोर्टिंग के दौरान द्वितीयक अपवाद उत्पन्न हों [SWS_PER_00355]। इसके अतिरिक्त, निर्दिष्ट थ्रेड-सुरक्षा गारंटी देती है कि कई निष्पादन थ्रेड्स में समानांतर त्रुटियों के साथ भी कोई डेटा भ्रष्टाचार या असंगठित दुष्प्रभाव नहीं होते हैं [SWS_PER_00355]।

यह मार्गदर्शिका विशेष रूप से AUTOSAR Adaptive Platform रिलीज़ R25-11 के विनिर्देश डेटा पर आधारित है।

UML क्लास आरेख

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__per__PerException768 PerException + PerException() nara__core__Exception792 Exception nara__per__PerException768->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

कंस्ट्रक्टर और डिस्ट्रक्टर

PerException फ़ंक्शन

Construct a new Persistency exception object containing an error code.

explicit PerException (ara::core::ErrorCode errorCode) noexcept;

मेथड का प्रलेखन

फ़ंक्शन PerException [SWS_PER_00355] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00135, RS_AP_00159

explicit PerException (ara::core::ErrorCode errorCode) noexcept;

Construct a new Persistency exception object containing an error code.

Header-Datei#include "ara/per/per_error_domain.h"
Scopeclass ara::per::PerException
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error code.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PER_00355
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PER_00355@rel:R25-11#d9070dbb
Content hash
d9070dbb
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Persistency.pdf#nameddest=SWS_PER_00355
Status: valid/unmigrated Version: rel:R25-11#de57fc23 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PER_00355@rel:R25-11#de57fc23
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f5dacf6e2026-09-30
  • R19-11rel:R19-11#606e44052026-10-14
  • R20-11rel:R20-11#bf89ad122026-10-14
  • R21-11rel:R21-11#bf89ad122026-10-14
  • R22-11rel:R22-11#b5d8215d2026-10-14
  • R23-11rel:R23-11#9889dc0a2026-10-14
  • R24-11rel:R24-11#de57fc232026-10-14
  • R25-11rel:R25-11#de57fc232026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill