تُستخدم كواجهة رد نداء (Callback) لإخطار التطبيقات بكتل بيانات القياس الجديدة لقاعدة زمنية.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 12f9dc63673bالمصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم كواجهة رد نداء (Callback) لإخطار التطبيقات بكتل بيانات القياس الجديدة لقاعدة زمنية.
تُستخدم الفئة المجردة ara::tsync::ProviderTimeBaseValidationNotification كواجهة رد نداء لتوفير بيانات قياس القاعدة الزمنية المسجلة لتطبيق المدقق (Validator). تستقبل عمليات التنفيذ كتل قياس Time Master عبر SetMasterTimingData[SWS_TS_00421]، وبيانات قياس Pdelay Responder عبر SetPdelayResponderData[SWS_TS_00423]. حُددت الطرق كـ noexcept، إلا أنها ليست آمنة لمؤشرات الترابط (Thread-safe)، ولهذا السبب يجب تجنب الاستدعاءات المتزامنة على نفس المثيل.
السياق
تعمل الفئة ara::tsync::ProviderTimeBaseValidationNotification كواجهة رد نداء مجردة للتحقق من صحة القواعد الزمنية داخل وحدة المزامنة. ومن خلال هذه الواجهة، يتم إخطار تطبيق المدقق المستلم بمجرد توفر كتل بيانات قياس مسجلة جديدة لقاعدة زمنية خاضعة للمراقبة. تحدد الواجهة نقاط تسليم لبيانات القياس المحددة لمولّد الوقت (Time Master) وفقًا لـ [SWS_TS_00421] وكذلك لبيانات قياس آلية الاستجابة للتأخير (Pdelay Responder) وفقًا لـ [SWS_TS_00423]. وأطراف التفاعل هنا هي عادةً آلية المزوّد (Provider) الداخلية لحزمة مزامنة الوقت كمصدر للبيانات، بالإضافة إلى مثيل تحقق من جانب التطبيق يقيّم بيانات الوقت المسجلة.
دورة الحياة والتزامن
باعتبارها واجهة مجردة، يتم اشتقاق ara::tsync::ProviderTimeBaseValidationNotification وتنفيذها بواسطة تطبيق التحقق الملموس. وتخضع دورة حياة التنفيذ المنشأ لمسؤولية التطبيق. تمتلك الفئة مُدمِّرًا افتراضيًا قياسيًا، مصرّحًا عنه بأنه آمن من الاستثناءات (noexcept) [SWS_TS_01301]. ويضمن ذلك إمكانية تدمير مثيلات الفئات المشتقة بشكل متعدد الأشكال (Polymorphic) وآمن للموارد عند التفكيك. فيما يتعلق بالتزامن، تم تصنيف طرق الإخطار صراحةً بأنها ليست آمنة لمؤشرات الترابط (non_threadsafe) [SWS_TS_00421]، [SWS_TS_00423]. وهذا يعني أنه لا يجوز إجراء استدعاءات SetMasterTimingData وSetPdelayResponderData لنفس المثيل بشكل غير محمي من مؤشرات ترابط متنافسة؛ ويُرجح أن يُرسل مزوّد القاعدة الزمنية المستدعي هذه الاستدعاءات تسلسليًا، أو يتعين على التطبيق ضمان المزامنة. سؤال Q-8f59bb65825ead66 (مفتوح)
مسار الاستخدام
يبدأ التسلسل النموذجي بتوفير فئة مشتقة من ara::tsync::ProviderTimeBaseValidationNotification بواسطة تطبيق المدقق. ويُرجح تسجيل المثيل لدى مزوّد القاعدة الزمنية للاشتراك في بيانات القياس المقابلة. سؤال Q-0ddb9ee8a3e8f381 (مفتوح) وبمجرد أن تُكمل حزمة الوقت دورات قياس جديدة للقاعدة الزمنية، فإنها تُسلّم الكتل المسجلة عبر الطرق الافتراضية البحتة (pure virtual) للواجهة. ولتحليل Time Master، يتم استدعاء SetMasterTimingData مع المعلمة measurementData من النوع TimeMasterMeasurementType[SWS_TS_00421]. وإذا توفرت بيانات قياس لقياس زمن انتقال الإشارة للقاعدة الزمنية، يمررها المزوّد عبر SetPdelayResponderData مع المعلمة measurementData من النوع PdelayResponderMeasurementType[SWS_TS_00423]. وبعد انتهاء تشغيل المراقبة، يدمر التطبيق المثيل بشكل منظم عبر المُدمِّر الافتراضي [SWS_TS_01301].
تم تحديد كل من SetMasterTimingData وSetPdelayResponderData كـ noexcept وتمتلكان التصنيف exception safe[SWS_TS_00421]، [SWS_TS_00423]. لذلك، لا يجوز لتنفيذات هذه الواجهة تمرير استثناءات إلى مزوّد المزامنة المستدعي. ولا تُرجع الطرق أي قيمة (void)؛ وبالتالي لا تتم الإفادة ببيانات القياس الخاطئة أو غير المعقولة مباشرةً عبر استدعاء الطريقة. ونظرًا لأن الواجهة مصرح عنها كـ non_threadsafe، فإن الاستدعاء المتزامن دون مزامنة خارجية يؤدي إلى سلوك غير معرف. ويُعد وجود كائن سليم شرطًا مسبقًا لاستلام البيانات، حيث يجب الحفاظ على دورة حياته طوال فترة توفير رد النداء بالكامل حتى تدميره عبر المُدمِّر [SWS_TS_01301].
يستند هذا الدليل حصريًا إلى متطلبات مواصفة AUTOSAR Adaptive (الوحدة tsync، الإصدار R25-11).
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني