دالة Create [SWS_EM_02562] Upstream: RS_AP_00119, RS_AP_00120, RS_AP_00128, RS_AP_00139, RS_AP_00144, RS_EM_00103, RS_AP_00159
static ara::core::Result< ExecutionClient > Create (std::function< void()> terminationHandler) noexcept;
Named constructor for ExecutionClient.
تُستخدم الدالة الثابتة Create كمنشئ مسمى (Named Constructor) لإنشاء مثيل من ara::exec::ExecutionClient [SWS_EM_02562]. وعند الاستدعاء، يتم تمرير دالة رد النداء terminationHandler (من النوع std::function<void()>)، والتي تُنفَّذ بالتزامن في خيط بالخلفية عند ورود إشارة SIGTERM [SWS_EM_02562]. وعادةً ما تقوم دالة رد النداء هذه بضبط علامة عامة أو إيقاظ الخيوط المحظورة لبدء إنهاء منظم (graceful termination). ويجب على جهة الاستدعاء ضمان بقاء المعالج قابلاً للاستدعاء طوال دورة حياة مثيل ExecutionClient بأكملها، وهو ما يجب مراعاته بوجه خاص عند الربط بمثيلات الكائنات عبر std::bind [SWS_EM_02562].
تُعيد الدالة كقيمة إرجاع ara::core::Result<ExecutionClient> يحتوي إما على المثيل المُنشأ أو على رمز خطأ [SWS_EM_02562]. وإذا فشل الإنشاء، يُحدَّد خطآن معينان:
ara::exec::ExecErrc::kInvalidArgument: لا يحتويterminationHandlerالمُمرَّر على دالة قابلة للاستدعاء (دلالات التراجع؛ المعالجة عن طريق تمرير كائن قابل للاستدعاء صالح) [SWS_EM_02562].ara::exec::ExecErrc::kNoCommunication: حدث خطأ في الاتصال (دون دلالات التراجع؛ المعالجة عبر إعادة المحاولة) [SWS_EM_02562].
أُعلنت الدالة على أنها noexcept، وتُعتبر آمنة من الاستثناءات (Exception-safe) وكذلك آمنة خيطيًا (Thread-safe)، ويمكنها داخليًا استدعاء منشئ يحدده المطور [SWS_EM_02562]. تفسير: يُرجح أن يتم الاستدعاء عادةً خلال مرحلة التهيئة المبكرة لعملية ما، وذلك لإعداد معالجة الإشارات في الوقت المناسب قبل بدء حمل العمل الرئيسي. سؤال Q-555aea895feb2123 (مفتوح) ويتوافق نمط المنشئ المسمى هذا مع تسجيل دالة رد النداء مع إنشاء StateClient عبر دالة Create الخاصة به [SWS_EM_02276].
أُنشئ هذا النص بواسطة نظام ذكاء اصطناعي بناءً على بيانات المواصفة.
| Header-Datei | #include "ara/exec/execution_client.h" |
|---|---|
| Scope | class ara::exec::ExecutionClient |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | thread-safe |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| terminationHandler | Callback which is called if ExecutionClient receives SIGTERM signal. The callback is executed in a background thread. A typical implementation of this callback will set a global flag (and potentially unblock other threads) to perform a graceful termination. Lifetime: it is expected that terminationHandler remains callable, during entire lifetime of the ExecutionClient instance. This is especially important if, terminationHandler is bound to an instance of a class (e.g. using std::bind). |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Result<ExecutionClient > | a result that contains either a ExecutionClient object or an error. |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| ara::exec::ExecErrc::kNoCommunication | no_rollback_semantics Communication error occurred. Recovery: try again |
| ara::exec::ExecErrc::kInvalidArgument | rollback_semantics Given terminationHandler doesn’t contain a callable function. Recovery: change argument |
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/SWS_EM_02562- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_EM_02562@rel:R25-11#d14c4c7e- Content hash
d14c4c7e- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_ExecutionManagement.pdf#nameddest=SWS_EM_02562
Status: valid/unmigrated
Version: rel:R25-11#446bd257
Versionshistorie & Revisions (1 transition, 4 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_EM_02562@rel:R25-11#446bd257
Recorded Revisions (4):
- R25-11
rel:R25-11#b09af1042026-09-30 - R23-11
rel:R23-11#10b43bed2026-10-14 - R24-11
rel:R24-11#7ed2aeda2026-10-14 - R25-11
rel:R25-11#446bd2572026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني