DEENESPTFRRUARHIKOZHNL

क्लास ara::phm::PhmException

[SWS_PHM_01242] Upstream: RS_AP_00119

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

Exception type thrown by Platform Health Management.

Header-Datei#include "ara/phm/phm_error_domain.h"
Forwarding-Header#include "ara/phm/phm_fwd.h"
Scopenamespace ara::phm
Basisklasse(n)ara::core::Exception

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

असफल मॉड्यूल ऑपरेशनों के लिए एक थ्रेड-सुरक्षित अपवाद के रूप में Platform Health Management के त्रुटि कोड को समाहित करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9c0b25d6fb92 उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

असफल मॉड्यूल ऑपरेशनों के लिए एक थ्रेड-सुरक्षित अपवाद के रूप में Platform Health Management के त्रुटि कोड को समाहित करता है।

वर्ग ara::phm::PhmException Platform Health Management में कॉलिंग घटकों को मॉड्यूल-विशिष्ट त्रुटियों को समाहित करने और अग्रेषित करने के लिए एक केंद्रीय अपवाद प्रकार के रूप में कार्य करता है। त्रुटि का पता चलने पर इसे स्पष्ट रूप से ara::core::ErrorCode के साथ इंस्टेंटिएट किया जाता है और संबंधित catch ब्लॉक के माध्यम से संरचित त्रुटि प्रबंधन को सक्षम करने के लिए फेंक दिया जाता है [SWS_PHM_01243]। एक महत्वपूर्ण बाधा के रूप में, इसका निर्माण noexcept, thread-safe और साथ ही exception-safe निर्दिष्ट है, जिसके कारण अपवाद निर्माण में द्वितीयक त्रुटियों को बाहर रखा गया है [SWS_PHM_01243]। Interpretation: कॉल करने वाले आमतौर पर गतिशील मेमोरी आवंटन के बिना निहित त्रुटि कोड का नियतात्मक रूप से मूल्यांकन करने के लिए ऑब्जेक्ट को संदर्भ द्वारा पकड़ते हैं। प्रश्न (खुला)

संदर्भ

वर्ग ara::phm::PhmException AUTOSAR Adaptive Platform के भीतर Platform Health Management (PHM) के लिए समर्पित अपवाद प्रकार के रूप में कार्य करता है। वर्ग परिभाषा के अनुसार, वर्ग सार्वजनिक रूप से ara::core::Exception से व्युत्पन्न होता है और मानकीकृत C++ अपवाद तंत्र के माध्यम से कॉलिंग सिस्टम और एप्लिकेशन घटकों को मॉड्यूल phm की त्रुटि स्थितियों को संप्रेषित करने के लिए कड़ी का प्रतिनिधित्व करता है। सिस्टम आर्किटेक्चर में, वर्ग मुख्य रूप से ऑपरेटिव PHM सेवाओं (जो निगरानी कार्य करती हैं और नियम उल्लंघनों पर त्रुटि स्थितियों का पता लगाती हैं) और एप्लिकेशन के उच्च-स्तरीय त्रुटि प्रबंधन रूटीन के बीच इंटरैक्ट करता है। ara::core के मौलिक त्रुटि प्रबंधन मॉडल में एकीकरण द्वारा यह सुनिश्चित किया जाता है कि Platform Health Management से डोमेन-विशिष्ट त्रुटि रिपोर्टों को समान रूप से स्थानांतरित और संसाधित किया जा सकता है।

जीवनचक्र

ara::phm::PhmException के एक इंस्टेंस का जीवन चक्र त्रुटि की स्थिति में स्पष्ट इंस्टेंसिएशन के साथ शुरू होता है। [SWS_PHM_01243] के अनुसार, ऑब्जेक्ट हेडर ara/phm/phm_error_domain.h के समावेश के साथ कंस्ट्रक्टर PhmException(ara::core::ErrorCode errorCode) के माध्यम से बनाया जाता है। निर्माण को noexcept घोषित किया गया है और इसमें “exception safe” और “thread-safe” दोनों विशेषताएं हैं [SWS_PHM_01243]। यह गारंटी देता है कि अपवाद ऑब्जेक्ट का इंस्टेंसिएशन उच्च समवर्तीता के तहत भी सुरक्षित रूप से होता है और किसी भी समय अप्रत्याशित द्वितीयक अपवादों को ट्रिगर नहीं करता है।

ऑब्जेक्ट पारित ara::core::ErrorCode को समाहित करता है और इसके निर्माण के बाद एक अपरिवर्तनीय स्थिति रखता है। स्टैक अनवाइंडिंग के दौरान, अपवाद ऑब्जेक्ट रनटाइम वातावरण के माध्यम से ले जाया जाता है। मानक C++ नियमों के अनुसार हैंडलिंग catch ब्लॉक को छोड़ते समय विनाश नियतात्मक रूप से होता है। Interpretation: इंस्टेंस आमतौर पर स्टैक पर सीधे throw अभिव्यक्ति में बनाए जाने चाहिए और संदर्भ (const ara::phm::PhmException&) द्वारा पकड़े जाने चाहिए, ताकि कॉलर की ओर से किसी गतिशील मेमोरी प्रबंधन की आवश्यकता न हो। प्रश्न Q-37fc47021a78a0db (खुला)

उपयोग पथ

विशिष्ट उपयोग पथ तब शुरू होता है जब Platform Health Management का कोई मॉनिटर किया गया ऑपरेशन विफल हो जाता है या किसी अमान्य स्थिति विचलन का पता चलता है। ट्रिगर करने वाला PHM फ़ंक्शन तब संबंधित त्रुटि कोड के साथ एक अपवाद ऑब्जेक्ट को आरंभ करता है और इसे [SWS_PHM_01243] से फेंकता है। कॉलर की तरफ, संरक्षित कोड अनुभाग एक try-catch ब्लॉक के भीतर निष्पादित किया जाता है। संभवतः, एप्लिकेशन अपवाद को या तो विशेष रूप से ara::phm::PhmException के रूप में या आधार वर्ग ara::core::Exception के माध्यम से बहुरूपी रूप से पकड़ते हैं। प्रश्न Q-54638c0dde7d9195 (खुला) अपवाद हैंडलर में, कारण का विश्लेषण करने और उचित प्रतिउपायों या आपातकालीन रणनीतियों को शुरू करने के लिए निहित ara::core::ErrorCode निकाला जाता है।

PhmException को ट्रिगर और हैंडल करने के लिए उपयोग पथएप्लिकेशनPHM-Dienstत्रुटि प्रबंधनPHM-Funktionsaufrufआंतरिक त्रुटि की पहचानPhmException(errorCode) werfenAuswertung von ErrorCodeत्रुटि हैंडलिंग के बाद वापसी

अनुक्रम आरेख: PHM में त्रुटि पहचान से लेकर ara::phm::PhmException को ट्रिगर करने और हैंडलर में मूल्यांकन तक का सामान्य प्रवाह। स्रोत: [SWS_PHM_01243]।

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

ara::phm::PhmException का केंद्रीय घटक रनटाइम पर त्रुटि कोड का स्थानांतरण है। ऑब्जेक्ट निर्माण के लिए एक पूर्व शर्त के रूप में एक मान्य ara::core::ErrorCode [SWS_PHM_01243] का पारित होना आवश्यक है। कॉल की उत्तर शर्त एक पूरी तरह से आरंभिक अपवाद ऑब्जेक्ट है, जो पारित त्रुटि कोड को क्वेरी के लिए अपरिवर्तित उपलब्ध कराता है।

चूंकि कंस्ट्रक्टर को स्पष्ट रूप से noexcept और “exception safe” के रूप में निर्दिष्ट किया गया है [SWS_PHM_01243], अपवाद के निर्माण के दौरान अपवादों की घटना को बाहर रखा गया है। इसलिए ऑब्जेक्ट निर्माण की विफलता नहीं हो सकती है, जो त्रुटि रिपोर्ट के दौरान std::terminate के माध्यम से समय से पहले समाप्ति को रोकता है। निर्दिष्ट थ्रेड सुरक्षा (“thread-safe”) डेटा भ्रष्टाचार से भी बचाती है जब एकाधिक थ्रेड समानांतर में अपने स्वयं के अपवादों के माध्यम से त्रुटि स्थितियों की रिपोर्ट करते हैं [SWS_PHM_01243]। परिणामस्वरूप, त्रुटि परिदृश्य स्वयं अपवाद वर्ग को प्रभावित नहीं करते हैं, बल्कि तकनीकी त्रुटि कारणों को दर्शाते हैं जो PHM त्रुटि डोमेन के एनकैप्सुलेटेड ara::core::ErrorCode में कोडित हैं।

यह मार्गदर्शिका AUTOSAR Adaptive Platform R25-11 के विनिर्देश के आधार पर एक AI द्वारा तैयार की गई थी।

UML क्लास आरेख

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

G nara__phm__PhmException101 PhmException + PhmException() nara__core__Exception792 Exception nara__phm__PhmException101->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

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

PhmException फ़ंक्शन

Construct a new PlatformHealthManagement exception object containing an error code.

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

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

फ़ंक्शन PhmException [SWS_PHM_01243] Upstream: RS_AP_00119, RS_AP_00159

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

Construct a new PlatformHealthManagement exception object containing an error code.

Header-Datei#include "ara/phm/phm_error_domain.h"
Scopeclass ara::phm::PhmException
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_PHM_01243
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01243@rel:R25-11#be5eddc4
Content hash
be5eddc4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01243
Status: valid/unmigrated Version: rel:R25-11#47b59c13 Versionshistorie & Revisions (1 transition, 5 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_PHM_01243@rel:R25-11#47b59c13
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#9af686bd2026-09-30
  • R22-11rel:R22-11#eabc2e272026-10-14
  • R23-11rel:R23-11#b6f2d9e42026-10-14
  • R24-11rel:R24-11#47b59c132026-10-14
  • R25-11rel:R25-11#47b59c132026-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