DEENESPTFRRUARHIKOZHNL

структура ara::diag::DataIdentifierConcurrencyType

[SWS_DM_00936] Upstream: RS_Diag_04166

struct DataIdentifierConcurrencyType {...};

Specifies the Concurrency type of a DataIdentifier related port.

Header-Datei#include "ara/diag/concurrency.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

Руководство пользователяСОЗДАНО ИИ

Настраивает допустимый параллелизм для операций чтения и записи на портах для идентификаторов данных.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: ec523fe189be Происхождение Открытые вопросы (3)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Настраивает допустимый параллелизм для операций чтения и записи на портах для идентификаторов данных.

Структура ara::diag::DataIdentifierConcurrencyType определяет допустимое поведение параллелизма для диагностических портов, связанных с идентификаторами данных (Data Identifier) [SWS_DM_00936]. С помощью переменных-членов read, write и readWrite приложение определяет, в какой степени Diagnostic Management (DM) может параллельно выполнять вызовы чтения и записи. Важным граничным условием является то, что все поля по умолчанию безопасно предварительно инициализированы значением ConcurrencyType::kNotConcurrent, вследствие чего параллельное выполнение разрешается только путем явной установки значения kConcurrent [SWS_DM_00939].

Контекст

C++-структура ara::diag::DataIdentifierConcurrencyType служит в AUTOSAR Adaptive Platform для спецификации поведения параллелизма на портах, связанных с диагностическими идентификаторами данных (Data Identifier, DID) [SWS_DM_00936]. Она выступает в качестве стандартизированного типа данных конфигурации, с помощью которого прикладное программное обеспечение объявляет диагностической системе времени выполнения свои возможности параллельной обработки (AUTOSAR_AP_SWS_Diagnostics §8.8.2 «Struct: DataIdentifierConcurrencyType»). Структура является частью определений интерфейсов для модуля diag (AUTOSAR_AP_SWS_Diagnostics с. 79).

Основным партнером по взаимодействию является Diagnostic Management (DM). Поступающие диагностические запросы принимаются DM и перенаправляются соответствующим методам порта DataIdentifier. На основе сохраненных в DataIdentifierConcurrencyType значений DM решает, могут ли операции чтения и записи вызываться параллельно или они должны быть сериализованы последовательно [SWS_DM_00939].

Жизненный цикл

Структура подключается через заголовочный файл ara/diag/concurrency.h и инстанцируется как чистый C++-объект данных (struct) [SWS_DM_00936]. При создании все содержащиеся переменные-члены безопасно инициализируются значением по умолчанию ConcurrencyType::kNotConcurrent [SWS_DM_00937]. Это гарантирует, что без явного разрешения со стороны приложения параллельные вызовы со стороны DM не происходят.

Жизненный цикл конфигурации структуры, как правило, привязан к инициализации соответствующего порта DataIdentifier. Приложение создает объект, задает желаемые степени параллелизма и передает конфигурацию порту. Во время последующей активной диагностической работы настройки остаются неизменными, что позволяет Diagnostic Management детерминированно диспетчеризировать вызовы методов (AUTOSAR_AP_SWS_Diagnostics §8.8.2.1 «Public Member Variables»).

Структура разделяет параллелизм на три ортогональных конфигурационных поля:

  • read: определяет тип параллелизма для операций исключительно чтения (Reads) [SWS_DM_00937].
  • write: определяет тип параллелизма для операций записи (Writes) [SWS_DM_00938].
  • readWrite: определяет поведение при совместном параллельном вызове методов чтения и записи [SWS_DM_00939].

Путь использования

Стандартный сценарий использования начинается с предоставления диагностического сервиса адаптивным приложением. Если внутренняя реализация порта потокобезопасна, приложение может разрешить параллельное выполнение операций чтения и записи. Для этого создается экземпляр DataIdentifierConcurrencyType и поле readWrite устанавливается в ConcurrencyType::kConcurrent [SWS_DM_00939]. Аналогичным образом могут быть при необходимости сконфигурированы read и write [SWS_DM_00937], [SWS_DM_00938].

Как только порт DataIdentifier регистрируется в DM, DM принимает внешние диагностические команды и пересылает их (AUTOSAR_AP_SWS_Diagnostics с. 1115). Если задано kConcurrent, DM разрешено одновременно выполнять входящие вызовы чтения и записи, за счет чего оптимизируются пропускная способность и задержка [SWS_DM_00939]. Если конфигурация остается со значением по умолчанию kNotConcurrent, DM сериализует вызовы.

Последовательность управления параллелизмом при операциях с DataIdentifierПриложениеDataIdentifierPortDiagnosticManagementИнициализация порта с DataIdentifierConcurrencyType(readWrite = kConcurrent)Use Case: Параллельное выполнение в штатном режиме работыParallel: Read-AnforderungParallel: Write-AnforderungDM одновременно выполняет операции чтения и записиВозврат результата диагностики

Диаграмма последовательности: типичный процесс конфигурации и управления параллельными вызовами со стороны Diagnostic Management (DM). Источники: [SWS_DM_00936], [SWS_DM_00939].

Настоящее руководство обобщает спецификацию ara::diag::DataIdentifierConcurrencyType в AUTOSAR Adaptive R25-11.

Карта членов

Константы

3

Диаграмма классов

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

G nara__diag__DataIdentifierConcurrencyType801 «struct» DataIdentifierConcurrencyType + read + readWrite + write

Подробный вид

Выберите элемент в оглавлении.

Константы

read переменная

Concurrency type for Reads.

ConcurrencyType read {ConcurrencyType::kNotConcurrent};
readWrite переменная

Concurrency type for calling Read and Write methods in a concurrent way. If set to kConcurrent the DM can call Read and Write APIs concurrently.

ConcurrencyType readWrite {ConcurrencyType::kNotConcurrent};
write переменная

Concurrency type for Writes.

ConcurrencyType write {ConcurrencyType::kNotConcurrent};

Документация констант / переменных

переменная read [SWS_DM_00937] Upstream: RS_Diag_04166

ConcurrencyType read {ConcurrencyType::kNotConcurrent};

Concurrency type for Reads.

Header-Datei#include "ara/diag/concurrency.h"
Scopestruct ara::diag::DataIdentifierConcurrencyType
Symbolread
TypConcurrencyType

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00937
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00937@rel:R25-11#55c6e694
Content hash
55c6e694
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00937
Status: valid/unmigrated Version: rel:R25-11#6141acdc Versionshistorie & Revisions (1 transition, 7 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_DM_00937@rel:R25-11#6141acdc
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#3c1c4dec2026-09-30
  • R20-11rel:R20-11#9009bca82026-10-14
  • R21-11rel:R21-11#ec706c302026-10-14
  • R22-11rel:R22-11#0ca959552026-10-14
  • R23-11rel:R23-11#118b9bf82026-10-14
  • R24-11rel:R24-11#f88189a32026-10-14
  • R25-11rel:R25-11#6141acdc2026-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

переменная readWrite [SWS_DM_00939] Upstream: RS_Diag_04166

ConcurrencyType readWrite {ConcurrencyType::kNotConcurrent};

Concurrency type for calling Read and Write methods in a concurrent way. If set to kConcurrent the DM can call Read and Write APIs concurrently.

Header-Datei#include "ara/diag/concurrency.h"
Scopestruct ara::diag::DataIdentifierConcurrencyType
SymbolreadWrite
TypConcurrencyType

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00939
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00939@rel:R25-11#fadefd73
Content hash
fadefd73
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00939
Status: valid/unmigrated Version: rel:R25-11#80d4f512 Versionshistorie & Revisions (1 transition, 7 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_DM_00939@rel:R25-11#80d4f512
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#43af52902026-09-30
  • R20-11rel:R20-11#69af7aee2026-10-14
  • R21-11rel:R21-11#69af7aee2026-10-14
  • R22-11rel:R22-11#fd1bb1452026-10-14
  • R23-11rel:R23-11#a12ac9ea2026-10-14
  • R24-11rel:R24-11#a3dd99472026-10-14
  • R25-11rel:R25-11#80d4f5122026-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

переменная write [SWS_DM_00938] Upstream: RS_Diag_04166

ConcurrencyType write {ConcurrencyType::kNotConcurrent};

Concurrency type for Writes.

Header-Datei#include "ara/diag/concurrency.h"
Scopestruct ara::diag::DataIdentifierConcurrencyType
Symbolwrite
TypConcurrencyType

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00938
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00938@rel:R25-11#b2bb3580
Content hash
b2bb3580
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00938
Status: valid/unmigrated Version: rel:R25-11#86878457 Versionshistorie & Revisions (1 transition, 7 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_DM_00938@rel:R25-11#86878457
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#ea0307702026-09-30
  • R20-11rel:R20-11#8ad3ad6d2026-10-14
  • R21-11rel:R21-11#b2fe6f282026-10-14
  • R22-11rel:R22-11#9c2e39fa2026-10-14
  • R23-11rel:R23-11#57d6f6de2026-10-14
  • R24-11rel:R24-11#345bb9642026-10-14
  • R25-11rel:R25-11#868784572026-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