मेमोरी ब्लॉक्स के कुशल आवंटन और विमोचन के लिए एक थ्रेड-सुरक्षित पूल मेमोरी संसाधन प्रदान करता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 8c6c1308f3f6उद्गमखुले प्रश्न (3)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
मेमोरी ब्लॉक्स के कुशल आवंटन और विमोचन के लिए एक थ्रेड-सुरक्षित पूल मेमोरी संसाधन प्रदान करता है।
क्लास ara::core::SynchronizedPoolResource एक थ्रेड-सुरक्षित मेमोरी संसाधन प्रदान करता है, जो आंतरिक पूल्स के माध्यम से आवंटन का प्रबंधन करता है और एक उच्च-स्तरीय अपस्ट्रीम संसाधन से अतिरिक्त मेमोरी का अनुरोध करता है ([SWS_CORE_00030])। C++ मानक के विपरीत, मेमोरी आवंटन विफल होने पर कोई अपवाद थ्रो नहीं करता है, बल्कि इसके बजाय nullptr लौटाता है ([SWS_CORE_00061])। कॉपी ऑपरेशन्स पूरी तरह से प्रतिबंधित हैं, जबकि मूव ऑपरेशन्स स्पष्ट रूप से समर्थित हैं। इसके अतिरिक्त, डिस्ट्रक्टर वर्चुअल नहीं है, इसलिए बेस क्लास पॉइंटर के माध्यम से इंस्टेंसेस को बहुरूपी रूप से मुक्त नहीं किया जाना चाहिए।
संदर्भ
क्लास ara::core::SynchronizedPoolResource मॉड्यूल core के भीतर AUTOSAR Adaptive Platform के लिए एक थ्रेड-सुरक्षित मेमोरी संसाधन प्रदान करता है। यह C++ मानक [mem.res.pool] के अनुसार std::pmr::synchronized_pool_resource की अवधारणा पर आधारित है और सार्वजनिक रूप से बेस क्लास MemoryResource से व्युत्पन्न होता है। इसका मुख्य कार्य आवर्ती आवंटनों को कुशलतापूर्वक और समवर्ती रूप से संभालने के लिए आकार वर्गों के अनुसार आंतरिक पूल्स के माध्यम से मेमोरी ब्लॉक्स का प्रबंधन करना है। यदि आंतरिक आपूर्ति पर्याप्त नहीं है, तो इंस्टेंस एक उच्च-स्तरीय अपस्ट्रीम मेमोरी संसाधन से बड़े मेमोरी ब्लॉक्स प्राप्त करता है ([SWS_CORE_00038])।
विशिष्ट इंटरैक्शन पार्टनर्स में किसी ऐप्लिकेशन के समवर्ती थ्रेड्स शामिल हैं जो आवंटन का अनुरोध करते हैं, मध्यस्थ पूल मैनेजर के रूप में SynchronizedPoolResource, और अपस्ट्रीम स्रोत के रूप में एक अंतर्निहित MemoryResource। do_allocate, do_deallocate, options और release जैसे सभी केंद्रीय एक्सेस और प्रबंधन फ़ंक्शन्स थ्रेड-सुरक्षित डिज़ाइन किए गए हैं ([SWS_CORE_00061], [SWS_CORE_00041], [SWS_CORE_00039], [SWS_CORE_00037])।
संदर्भ आरेख: समवर्ती ऐप्लिकेशन थ्रेड्स, पूल संसाधन और अपस्ट्रीम मेमोरी स्रोत का अंतर्संबंध। स्रोत: [SWS_CORE_00030], [SWS_CORE_00038]।
जीवनचक्र
SynchronizedPoolResource का इंस्टेंसिएशन कई कंस्ट्रक्टर ओवरलोड्स के माध्यम से हो सकता है। यदि आवंटन विकल्प (PoolOptions) और अपस्ट्रीम संसाधन दोनों उपलब्ध हैं, तो आरंभीकरण पूर्ण अपवाद सुरक्षा की गारंटी देता है और इसे noexcept के रूप में घोषित किया गया है ([SWS_CORE_00030])। इसके अतिरिक्त बिना पैरामीटर्स वाले कंस्ट्रक्टर्स ([SWS_CORE_00031]), केवल अपस्ट्रीम पॉइंटर वाले ([SWS_CORE_00032]) या केवल पूल विकल्पों वाले ([SWS_CORE_00033]) मौजूद हैं। व्याख्या: यदि कोई अपस्ट्रीम पॉइंटर पास नहीं किया जाता है, तो कार्यान्वयन संभवतः एक प्लेटफ़ॉर्म-विशिष्ट डिफ़ॉल्ट मेमोरी संसाधन का सहारा लेता है। प्रश्न Q-5dafb414672249dc (खुला)
स्वामित्व के संदर्भ में, क्लास स्पष्ट रूप से कॉपी करने को बाहर करता है: कॉपी कंस्ट्रक्टर ([SWS_CORE_00034]) और कॉपी असाइनमेंट ऑपरेटर ([SWS_CORE_00036]) दोनों हटा दिए गए हैं (=delete)। हालाँकि, ISO-C++17 मानक के विपरीत, AUTOSAR इस क्लास के लिए स्पष्ट रूप से मूव सेमांटिक्स को परिभाषित करता है: एक मूव कंस्ट्रक्टर ([SWS_CORE_00043]) और एक मूव असाइनमेंट ऑपरेटर ([SWS_CORE_00044]) क्रमशः noexcept=default के रूप में उपलब्ध हैं।
विनाश (destruction) का एक केंद्रीय पहलू मानक व्यवहार से विचलन है: डिस्ट्रक्टर ~SynchronizedPoolResource() स्पष्ट रूप से गैर-वर्चुअल है ([SWS_CORE_00035])। व्याख्या: चूँकि डिस्ट्रक्टर वर्चुअल नहीं है, बेस क्लास MemoryResource* के पॉइंटर के माध्यम से एक बहुरूपी विनाश अपरिभाषित व्यवहार की ओर ले जा सकता है; इसलिए इंस्टेंसेस को हमेशा उनके ठोस प्रकार के माध्यम से नष्ट किया जाना चाहिए। प्रश्न Q-5add73880279b024 (खुला)release() को कॉल करके, संसाधन ऑब्जेक्ट को बरकरार रखते हुए, पूरी आवंटित मेमोरी को अपस्ट्रीम संसाधन में भी वापस किया जा सकता है ([SWS_CORE_00037])।
उपयोग पथ
विशिष्ट प्रवाह में आरंभीकरण, मेमोरी ब्लॉक्स का बार-बार आवंटन और विमोचन, तथा अंतिम क्लीनअप शामिल हैं:
आरंभीकरण: ऐप्लिकेशन कॉन्फ़िगरेशन पैरामीटर्स और एक उच्च-स्तरीय मेमोरी संसाधन ([SWS_CORE_00030]) निर्दिष्ट करके इंस्टेंस बनाता है। सक्रिय सेटिंग्स को options() ([SWS_CORE_00039]) के माध्यम से और अपस्ट्रीम पॉइंटर को upstream_resource() ([SWS_CORE_00038]) के माध्यम से क्वेरी किया जा सकता है।
मेमोरी आवंटन: मेमोरी अनुरोधों को do_allocate ([SWS_CORE_00061]) के माध्यम से सुरक्षित रूप से संसाधित किया जाता है। व्याख्या: ऐप्लिकेशन कोड में कॉल आमतौर पर सीधे संरक्षित विधि do_allocate के माध्यम से नहीं, बल्कि बेस क्लास MemoryResource के विरासत में मिले सार्वजनिक इंटरफ़ेस allocate के माध्यम से किया जाता है। प्रश्न Q-1542a47cdff73dfb (खुला)
पहचान जाँच:do_is_equal के माध्यम से यह निर्धारित किया जा सकता है कि क्या दो मेमोरी संसाधन एक-दूसरे के समतुल्य हैं ([SWS_CORE_00042])।
विमोचन: अलग-अलग मेमोरी क्षेत्रों को do_deallocate ([SWS_CORE_00041]) के माध्यम से पूल में वापस लाया जाता है। यदि आवश्यक हो, तो release() के माध्यम से सभी पूल्स की संपूर्ण मेमोरी को बंडल रूप में अपस्ट्रीम संसाधन को वापस किया जा सकता है ([SWS_CORE_00037])।
AUTOSAR Adaptive Platform त्रुटि प्रबंधन में C++ मानक के अपवाद सम्मेलनों से जानबूझकर विचलित होता है:
आवंटन त्रुटियाँ: जहाँ ISO-C++ समाप्त होने की स्थिति में std::bad_alloc को थ्रो करने का प्रावधान करता है, वहीं AUTOSAR में do_allocate को noexcept के रूप में परिभाषित किया गया है। यदि कोई उपयुक्त मेमोरी ब्लॉक प्रदान नहीं किया जा सकता है, तो विधि इसके बजाय अनिवार्य रूप से एक नल पॉइंटर (nullptr) लौटाती है ([SWS_CORE_00061])। इसलिए कॉलर्स को प्रत्येक आवंटन रिटर्न मान की nullptr के लिए जाँच करनी चाहिए।
डी-आवंटन त्रुटियाँ: विधि do_deallocate भी noexcept है। यदि किसी मेमोरी ब्लॉक को वापस करते समय कोई त्रुटि होती है, तो विनिर्देश के अनुसार इसे चुपचाप अनदेखा कर दिया जाता है ([SWS_CORE_00041])।
निर्माण जोखिम: जहाँ विकल्पों और अपस्ट्रीम संसाधन वाला कंस्ट्रक्टर अपवाद-सुरक्षित है ([SWS_CORE_00030]), वहीं बिना अपस्ट्रीम विनिर्देश या बिना विकल्पों वाले कंस्ट्रक्टर्स को गैर-अपवाद-सुरक्षित (\"not exception safe\") के रूप में वर्गीकृत किया गया है ([SWS_CORE_00031], [SWS_CORE_00032], [SWS_CORE_00033])। व्याख्या: यदि इन कंस्ट्रक्टर्स में पूल प्रबंधन संरचनाओं का आंतरिक प्रावधान विफल हो जाता है, तो ऑब्जेक्ट निर्माण विफल हो सकता है। प्रश्न (खुला)
यह क्लास गाइड AUTOSAR Adaptive Release R25-11 के लिए ara::core::SynchronizedPoolResource के विनिर्देश को सारांशित करता है।
except for the following deviations: 1. The function is noexcept 2. The function returns nullptr instead of (potentially) throwing a std::bad_alloc exception ≙ std::bad_alloc
As per corresponding usage in [mem.res.pool] except for the following deviations: 1. The function is noexcept 2. The function returns nullptr instead of (potentially) throwing a std::bad_alloc exception
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: d6b2e58cc49aउद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
उपयोग और आवंटन सेमांटिक्स
हेडर फ़ाइल #include "ara/core/memory_resource.h" से क्लास ara::core::SynchronizedPoolResource का मेम्बर फ़ंक्शन do_allocate निर्दिष्ट बाइट आकार bytes और अलाइनमेंट alignment[SWS_CORE_00061] के साथ मेमोरी क्षेत्रों के आवंटन के लिए कार्य करता है। सफलता की स्थिति में, [mem.res.pool] के अनुसार सिंक्रोनस कॉल आवंटित मेमोरी ब्लॉक के लिए void* प्रकार का एक मान्य पॉइंटर लौटाता है [SWS_CORE_00061]।
त्रुटि प्रबंधन और विचलन
त्रुटि व्यवहार के संबंध में, कार्यान्वयन [mem.res.pool] की आवश्यकताओं से स्पष्ट रूप से विचलित होता है: मेथड को noexcept के रूप में घोषित किया गया है और यह std::bad_alloc अपवाद को ट्रिगर नहीं करती है [SWS_CORE_00061]। मेमोरी अनुरोध विफल होने की स्थिति में, लौटाया गया पॉइंटर अनिवार्य रूप से nullptr[SWS_CORE_00061] होता है। आवंटन त्रुटियों को मज़बूती से पकड़ने के लिए कॉलर्स को रिटर्न मान की नल पॉइंटर के लिए अनिवार्य रूप से जाँच करनी चाहिए।
समवर्तीता और परस्पर क्रिया
फ़ंक्शन को exception safe के रूप में और अन्य मेमोरी संसाधनों के विपरीत thread-safe के रूप में निर्दिष्ट किया गया है [SWS_CORE_00061]। इसकी protected विजिबिलिटी के कारण, व्यवहार में यह मुख्य रूप से ara::core::MemoryResource से शुद्ध वर्चुअल बेस इंटरफ़ेस do_allocate के आंतरिक ओवरराइड के रूप में कार्य कर सकता है [SWS_CORE_06566]। प्रश्न Q-95ba181693426bfc (खुला) जबकि ara::core::SynchronizedPoolResource समवर्ती पहुंच की सुरक्षा करता है [SWS_CORE_00061], ara::core::UnsynchronizedPoolResource::do_allocate[SWS_CORE_00058] और ara::core::MonotonicBufferResource::do_allocate[SWS_CORE_06569] जैसे तुलनीय कार्यान्वयन not thread-safe के रूप में परिभाषित हैं।
यह टेक्स्ट AUTOSAR Adaptive R25-11 विनिर्देश के आधार पर एक AI सिस्टम द्वारा जनरेट किया गया था।
As per corresponding usage in [mem.res.pool] except for the following deviations: 1. The function is noexcept 2. If unsuccessful: errors will be silently ignored
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: b07cac0de0a1उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
क्लास ara::core::SynchronizedPoolResource का संरक्षित मेम्बर फ़ंक्शन do_deallocate[SWS_CORE_00041] के अनुसार पहले से आवंटित मेमोरी क्षेत्र को रिलीज़ करने का कार्य करता है। इसका कॉल सिंक्रोनस रूप से होता है और पैरामीटर के रूप में मेमोरी क्षेत्र के लिए एक पॉइंटर p, बाइट्स में आकार bytes और मेमोरी अलाइनमेंट alignment की अपेक्षा करता है। चूँकि मेम्बर फ़ंक्शन को विजिबिलिटी protected के साथ घोषित किया गया है, यह संभवतः नियमित एप्लिकेशन कोड में सीधे कॉल नहीं किया जाता है, बल्कि पैरेंट बेस क्लास ara::core::MemoryResource ([SWS_CORE_06567]) के डीएलोकेशन के सार्वजनिक इंटरफ़ेस के माध्यम से निष्पादित किया जाता है। प्रश्न Q-badea921c907c214 (खुला)
त्रुटि प्रबंधन और अपवाद व्यवहार के संबंध में, विनिर्देश मानक से दो अनिवार्य विचलनों को परिभाषित करता है:
फ़ंक्शन को noexcept घोषित किया गया है और यह पूरी तरह से अपवाद-सुरक्षित (exception safe) है ([SWS_CORE_00041])।
यदि डीएलोकेशन सफल नहीं होता है, तो उत्पन्न होने वाली त्रुटियों को चुपचाप अनदेखा कर दिया जाता है ([SWS_CORE_00041])। न तो कोई अपवाद थ्रो किया जाता है और न ही कोई त्रुटि कोड रिपोर्ट किया जाता है।
समवर्तीता के क्षेत्र में, ara::core::SynchronizedPoolResource में कार्यान्वयन इस तथ्य से अलग है कि इसे स्पष्ट रूप से थ्रेड-सुरक्षित (thread-safe) के रूप में निर्दिष्ट किया गया है ([SWS_CORE_00041])। यह इसे एकाधिक थ्रेड्स से समवर्ती कॉल के लिए उपयुक्त बनाता है। इसमें यह संबंधित संसाधनों ara::core::UnsynchronizedPoolResource ([SWS_CORE_00059]) और ara::core::MonotonicBufferResource ([SWS_CORE_06570]) से काफी भिन्न है, जिन्हें थ्रेड-सुरक्षित नहीं के रूप में वर्गीकृत किया गया है।
यह पाठ AUTOSAR R25-11 विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: c89ab0c97360उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
संरक्षित सदस्य फ़ंक्शन do_is_equal किसी अन्य मेमोरी संसाधन [SWS_CORE_00042] के साथ ara::core::SynchronizedPoolResource के एक इंस्टेंस की समानता की जांच करता है। यह [mem.res.pool] में पूल संसाधनों के विनिर्देश के अनुसार ara::core::MemoryResource[SWS_CORE_06568] से शुद्ध वर्चुअल बेस क्लास विधि को ओवरराइड करता है।
उपयोग और इंटरफ़ेस: एक पैरामीटर के रूप में किसी अन्य ara::core::MemoryResource ऑब्जेक्ट का संदर्भ पास किया जाता है (const MemoryResource &other)। प्रकार bool का रिटर्न मान इंगित करता है कि दोनों संसाधन समतुल्य हैं या नहीं। व्याख्या: दृश्यता protected के कारण, नियमित अनुप्रयोग प्रवाह में फ़ंक्शन को सीधे कॉल नहीं किया जाता है, बल्कि बेस क्लास की सार्वजनिक तुलना विधि के माध्यम से निष्पादित किया जाता है। प्रश्न Q-29fb2980d1241fae (खुला)
त्रुटि प्रबंधन और सुरक्षा: विधि को पहचानकर्ता noexcept के साथ घोषित किया गया है और exception safe[SWS_CORE_00042] के रूप में निर्दिष्ट किया गया है। कोई अपवाद या विशिष्ट त्रुटि कोड उत्पन्न नहीं होते हैं। निष्पादन तुल्यकालिक रूप से होता है।
कॉनक्रेन्सी:[SWS_CORE_00042] के अनुसार, do_is_equal को thread-safe के रूप में निर्दिष्ट किया गया है, ताकि बिना किसी अतिरिक्त बाहरी सिंक्रोनाइज़ेशन के कई थ्रेड्स में एक साथ तुलना करने की अनुमति हो।
परस्पर क्रिया: फ़ंक्शन ara::core::UnsynchronizedPoolResource[SWS_CORE_00060] में कार्यान्वयन के लिए थ्रेड-सुरक्षित समकक्ष बनाता है। इसी तरह, ara::core::MonotonicBufferResource एक संगत ओवरराइड प्रदान करता है, जिसे noexcept[SWS_CORE_06571] के रूप में भी चिह्नित किया गया है।
यह पाठ AUTOSAR Adaptive R25-11 विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 4714ac548826उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
क्लास ara::core::SynchronizedPoolResource का सदस्य फ़ंक्शन options मेमोरी संसाधन के लिए प्रकार PoolOptions की कॉन्फ़िगर की गई सेटिंग्स को सिंक्रोनस रूप से वापस करता है [SWS_CORE_00039]। कॉल क्लास के एक इंस्टेंस पर पैरामीटर रहित होता है और हेडर ara/core/memory_resource.h के माध्यम से घोषित किया जाता है [SWS_CORE_00039]। विनिर्देश के अनुसार व्यवहार [mem.res.pool][SWS_CORE_00039] पर आधारित है, जिसे C++ मानक के पूल संसाधनों के संदर्भ के रूप में व्याख्यायित किया जा सकता है। प्रश्न Q-9abfddc2cf8dc88c (खुला)
त्रुटि प्रबंधन और अपवाद सुरक्षा के संबंध में, मेथड को noexcept के रूप में घोषित किया गया है और इसे पूरी तरह से अपवाद-सुरक्षित (exception safe) माना जाता है [SWS_CORE_00039]। इस क्वेरी फ़ंक्शन के लिए कोई विशिष्ट त्रुटि कोड या DET या DEM को संदेश मौजूद नहीं हैं।
समवर्तीता के संबंध में, मेथड को const के रूप में और स्पष्ट रूप से थ्रेड-सुरक्षित (thread-safe) के रूप में निर्दिष्ट किया गया है [SWS_CORE_00039]। इसलिए इसे उपयोगकर्ता स्तर पर अतिरिक्त सिंक्रनाइज़ेशन उपायों के बिना कई थ्रेड्स से सुरक्षित रूप से और समानांतर में कॉल किया जा सकता है।
ara::core के भीतर परस्पर क्रिया में, [SWS_CORE_00057] गैर-सिंक्रनाइज़ समकक्ष प्रदान करता है: ara::core::UnsynchronizedPoolResource के लिए समान नाम और हस्ताक्षर वाला फ़ंक्शन options[mem.res.pool] के अनुसार समान सिमेंटिक्स के साथ मौजूद है।
यह पाठ एक AI द्वारा जनरेट किया गया था और एक प्रारंभिक उपयोग सहायता के रूप में कार्य करता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 32c426df4959उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
सिंक्रोनस मेम्बर फ़ंक्शन release() क्लास ara::core::SynchronizedPoolResource से संबंधित है और हेडर फ़ाइल #include "ara/core/memory_resource.h"[SWS_CORE_00037] के माध्यम से प्रदान किया जाता है। इसका सिग्नेचर void release () noexcept; है, यह कोई पैरामीटर नहीं लेता है और इसका कोई रिटर्न मान नहीं है। कार्यात्मक सेमांटिक्स [mem.res.pool][SWS_CORE_00037] में संबंधित उपयोग पर आधारित हैं, जिससे मेमोरी संसाधन द्वारा प्रबंधित मेमोरी रिलीज़ हो जाती है।
त्रुटि प्रबंधन के संबंध में, फ़ंक्शन को अपवाद-सुरक्षित (exception safe) और noexcept[SWS_CORE_00037] घोषित किया गया है। कोई C++ अपवाद नहीं होते हैं; विनिर्देश के दायरे में DET या DEM के माध्यम से विशिष्ट त्रुटि कोड या त्रुटि रिपोर्ट परिभाषित नहीं हैं।
समवर्तीता के संबंध में, ऑपरेशन को स्पष्ट रूप से थ्रेड-सुरक्षित (thread-safe) निर्दिष्ट किया गया है [SWS_CORE_00037]। इसलिए एक ही संसाधन इंस्टेंस पर एकाधिक थ्रेड्स से एक साथ कॉल अतिरिक्त एप्लिकेशन-साइड लॉक्स के बिना अनुमेय होना चाहिए। प्रश्न Q-3da3b45ca2070b3e (खुला)
पारस्परिक क्रिया में, व्यवहार ara::core::UnsynchronizedPoolResource[SWS_CORE_00065] में समान-कार्य वाली मेथड से मेल खाता है, जो [mem.res.pool] को भी संदर्भित करती है और noexcept तथा thread-safe के रूप में निर्दिष्ट है। इसके विपरीत, ara::core::MonotonicBufferResource[SWS_CORE_06530] का समरूप release()-फ़ंक्शन विनिर्देश के अनुसार थ्रेड-सुरक्षित नहीं (not thread-safe) है, यद्यपि यह noexcept गारंटी के भी अधीन है।
यह टेक्स्ट एक AI द्वारा बनाया गया था और विशेष रूप से AUTOSAR R25-11 के विनिर्देश डेटा पर आधारित है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 6f69b7b33ad7उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
उपयोग
क्लास ara::core::SynchronizedPoolResource का मेम्बर फ़ंक्शन upstream_resource()[SWS_CORE_00038] के अनुसार अंतर्निहित अपस्ट्रीम मेमोरी संसाधन (MemoryResource*) के लिए एक पॉइंटर लौटाता है। कॉल सिंक्रोनस रूप से होता है और इसके लिए हेडर फ़ाइल #include "ara/core/memory_resource.h"[SWS_CORE_00038] को शामिल करने की आवश्यकता होती है। फ़ंक्शन कोई पासिंग पैरामीटर स्वीकार नहीं करता है और उच्च-स्तरीय मेमोरी प्रबंधन इकाई के लिए एक शुद्ध निरीक्षक के रूप में कार्य करता है।
त्रुटि प्रबंधन और अपवाद-सुरक्षा
मेथड को noexcept के रूप में घोषित किया गया है और विनिर्देश के अनुसार अपवाद-सुरक्षित (exception safe) के रूप में वर्गीकृत किया गया है [SWS_CORE_00038]। क्वेरी की विफलता या अपवादों का ट्रिगर होना बाहर रखा गया है; इस कॉल के लिए कोई त्रुटि कोड मौजूद नहीं हैं।
समवर्तीता और प्रतिबंध
फ़ंक्शन को const के साथ-साथ स्पष्ट रूप से थ्रेड-सुरक्षित (thread-safe) के रूप में निर्दिष्ट किया गया है [SWS_CORE_00038]। इसलिए इसे अतिरिक्त बाहरी सिंक्रोनाइज़ेशन के बिना कई निष्पादन संदर्भों द्वारा समवर्ती रूप से कॉल किया जा सकता है।
इंटरैक्शन
एक अपस्ट्रीम मेमोरी संसाधन की अवधारणा AUTOSAR Adaptive Core के विभिन्न मेमोरी पूल कार्यान्वयनों में लगातार प्रदान की जाती है:
ara::core::UnsynchronizedPoolResource में, कार्यात्मक रूप से समान मेथड [SWS_CORE_00056] अपस्ट्रीम संसाधन के लिए एक पॉइंटर भी प्रदान करती है, लेकिन यह गैर-आंतरिक रूप से सिंक्रोनाइज़्ड पूल परिदृश्यों पर लक्षित है।
ara::core::MonotonicBufferResource में [SWS_CORE_06531] के साथ एक संबंधित समकक्ष मौजूद है, जिसे noexcept के साथ-साथ थ्रेड-सुरक्षित के रूप में भी निर्दिष्ट किया गया है।
यह उपयोग नोट AUTOSAR पेलोड के आधार पर स्वचालित रूप से जनरेट किया गया था।
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल