स्ट्रक्चर 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 |
उपयोगकर्ता गाइडएआई जनित
एसिंक्रोनस रूप से निष्पादित SOVD डायग्नोस्टिक्स ऑपरेशन शुरू करते समय रिटर्न संरचना के रूप में कार्य करता है।
एसिंक्रोनस रूप से निष्पादित SOVD डायग्नोस्टिक्स ऑपरेशन शुरू करते समय रिटर्न संरचना के रूप में कार्य करता है।
संरचना ara::diag::GenericDiagnosticSovdOperation::StartAsynchronousExecutionResponse AUTOSAR Adaptive Platform में एसिंक्रोनस रूप से चलने वाले SOVD डायग्नोस्टिक्स ऑपरेशन को शुरू करते समय एक प्रतिक्रिया प्रकार के रूप में कार्य करती है [SWS_DM_02209]। इसे एप्लिकेशन द्वारा इंस्टैंसिएट किया जाता है और Diagnostic Management को ara::core::Future के भीतर एक वैरिएंट के रूप में लौटाया जाता है, जब कोई ऑपरेशन बैकग्राउंड में जारी रहता है AUTOSAR_AP_SWS_Diagnostics §8.62 “StartExecution”। कॉल से पहले, किसी भी आवश्यक प्रॉक्सिमिटी चैलेंज सत्यापन को सफलतापूर्वक पूरा किया जाना चाहिए। इसके बाद, Diagnostic Management इस प्रतिक्रिया के आधार पर SOVD क्लाइंट को एसिंक्रोनस रिस्पांस उत्पन्न करता है।
संदर्भ
डेटा संरचना ara::diag::GenericDiagnosticSovdOperation::StartAsynchronousExecutionResponse फंक्शनल क्लस्टर Diagnostic Management (DM) में SOVD डायग्नोस्टिक्स ऑपरेशन की एसिंक्रोनस शुरुआत के लिए रिटर्न प्रकार के रूप में कार्य करती है [SWS_DM_02209]। DiagnosticSovdOperationStart प्रकार के प्रत्येक कॉन्फ़िगर किए गए ऑपरेशन के लिए, Diagnostic Server का इंस्टेंस ASAM SOVD के अनुसार ऑपरेशन शुरू करने के लिए SOVD मेथड प्रदान करता है [SWS_DM_01396]। जैसे ही कोई क्लाइंट SOVD प्रोटोकॉल के माध्यम से किसी ऑपरेशन के निष्पादन का अनुरोध करता है, Diagnostic Management इस कॉल को इंटरफ़ेस ara::diag::GenericDiagnosticSovdOperation::StartExecution पर अग्रेषित करता है [SWS_DM_02174]।
इस प्रवाह के भीतर, StartAsynchronousExecutionResponse एप्लिकेशन-विशिष्ट डायग्नोस्टिक्स हैंडलर से Diagnostic Management के लिए एक प्रतिक्रिया ऑब्जेक्ट के रूप में कार्य करता है। जबकि सिंक्रोनस ऑपरेशनों का उत्तर StartSynchronousExecutionResponse के माध्यम से दिया जाता है [SWS_DM_02176], StartAsynchronousExecutionResponse की वापसी यह संकेत देती है कि वास्तविक डायग्नोस्टिक्स प्रोसेसिंग एक बैकग्राउंड टास्क के रूप में जारी है और SOVD क्लाइंट को तात्कालिक प्रतिक्रिया केवल सफल आरंभ की पुष्टि करती है AUTOSAR_AP_SWS_Diagnostics §7.3.3.5.5.5 “Operations – Start execution of an operation”।
जीवनचक्र
StartAsynchronousExecutionResponse का निर्माण StartExecution के निष्पादन के दौरान सर्विस इंटरफ़ेस के कंक्रीट कार्यान्वयन द्वारा किया जाता है AUTOSAR_AP_SWS_Diagnostics §8.62 “StartExecution”। यदि हैंडलर यह निर्णय लेता है कि अनुरोधित ऑपरेशन को एसिंक्रोनस रूप से प्रोसेस किया जाना चाहिए, तो वह स्ट्रक्ट को इंस्टैंसिएट करता है और इसे ara::core::Variant<StartSynchronousExecutionResponse, StartAsynchronousExecutionResponse> में एनकैप्सुलेट करता है।
इस वैरिएंट को ara::core::Promise के माध्यम से रिज़ॉल्व किया जाता है और ara::core::Future के रूप में Diagnostic Management को पास किया जाता है AUTOSAR_AP_SWS_Diagnostics §8.62 “StartExecution”। फ्यूचर के रिज़ॉल्यूशन के साथ, संरचना का स्वामित्व Diagnostic Management को स्थानांतरित हो जाता है। व्याख्या: Diagnostic Management द्वारा मूल्यांकन के बाद StartAsynchronousExecutionResponse के इंस्टेंस को छोड़ दिया जाना चाहिए, जैसे ही बाहरी क्लाइंट को SOVD रिस्पांस संदेश उत्पन्न और भेजा जाता है। प्रश्न Q-3977fae99e62957e (खुला) डायग्नोस्टिक्स कार्य की आगे की प्रोसेसिंग एप्लिकेशन संदर्भ में समवर्ती रूप से जारी रहती है।
उपयोग पथ
नियमित प्रवाह किसी ऑपरेशन को शुरू करने के लिए Diagnostic Server पर SOVD अनुरोध के आगमन के साथ शुरू होता है [SWS_DM_01396]। सफल पूर्व-जांच के बाद, Diagnostic Management पंजीकृत हैंडलर के मेथड StartExecution को कॉल करता है [SWS_DM_02174]। इस प्रक्रिया में, ऑपरेशन का नाम, इनपुट डेटा, मेटा-जानकारी और एक ara::diag::CancellationHandler पास किए जाते हैं AUTOSAR_AP_SWS_Diagnostics §8.62 “StartExecution”।
हैंडलर एसिंक्रोनस बैकग्राउंड प्रोसेस शुरू करता है, संरचना StartAsynchronousExecutionResponse बनाता है [SWS_DM_02209] और इसे ara::core::Future में लौटाता है। Diagnostic Management ऑब्जेक्ट को निकालता है और प्रतिक्रिया को क्लाइंट के लिए मानक-अनुरूप एसिंक्रोनस SOVD प्रतिक्रिया में बदल देता है।
अनुक्रम आरेख: StartAsynchronousExecutionResponse के माध्यम से किसी SOVD ऑपरेशन का एसिंक्रोनस आरंभ। स्रोत: [SWS_DM_01396], [SWS_DM_02174], [SWS_DM_02209], AUTOSAR_AP_SWS_Diagnostics §8.62 “StartExecution”।
त्रुटि परिदृश्य
मेथड कॉल के लिए एक केंद्रीय पूर्वशर्त प्राधिकरण है: यदि आवश्यक हो, तो StartExecution को कॉल करने से पहले प्रॉक्सिमिटी चैलेंज का सत्यापन सफलतापूर्वक पास होना चाहिए [SWS_DM_02174]। यदि यह विफल हो जाता है, तो हैंडलर का कॉल नहीं किया जाता है और कोई StartAsynchronousExecutionResponse उत्पन्न नहीं होता है।
चल रहे निष्पादन के दौरान निरस्तीकरण को संभालने के लिए, सिस्टम एक ara::diag::CancellationHandler प्रदान करता है AUTOSAR_AP_SWS_Diagnostics §8.62 “StartExecution”। यदि फ्यूचर लौटाए जाने से पहले हैंडलर में कोई त्रुटि होती है, तो एप्लिकेशन फ्यूचर को त्रुटि स्थिति के साथ समाप्त कर सकता है, जिससे कोई वैध प्रतिक्रिया संरचना आगे संसाधित नहीं होती है।
यह क्लास गाइड AUTOSAR रिलीज़ R25-11 पर आधारित है और स्वचालित रूप से तैयार किया गया था।
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल