结构体 ara::tsync::UserData
[SWS_TS_14230] Upstream: RS_TS_00014 原文尚未导入
struct UserData {...};
Structure to define user data. .
Header-Datei #include "ara/tsync/synchronized_time_base_status.h" Forwarding-Header #include "ara/tsync/tsync_fwd.h" Scope namespace ara::tsync
用户指南人工智能生成 提供用于为同步时基传输少量应用特定有效负载数据的缓冲区。
AI 生成
未审核
模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 44e6e39606c3
来源
未决问题(1)
摘要 详细
提供用于为同步时基传输少量应用特定有效负载数据的缓冲区。
结构体 ara::tsync::UserData 用于在同步时基的背景下传输紧凑的应用特定有效负载数据。它管理一个静态缓冲区,具有通过 kMaxUserDataSize 定义的不可变 3 字节上限 [SWS_TS_14231] 。应用程序将有效负载数据写入该数组,并通过字段 size 指示实际有效字节数 [SWS_TS_14232] 。作为一个关键边界条件,应用编程逻辑必须确保 size 绝不超过规定的最大容量,并避免访问未初始化的缓冲区区域。
更多 ›
上下文
数据结构 ara::tsync::UserData 在 AUTOSAR Adaptive Platform 的时间同步功能集群(tsync)中用于封装同步时基背景下的应用特定有效负载数据。该结构体在头文件 ara/tsync/synchronized_time_base_status.h 中声明。其首要职责是为与时间信息一起传输或评估的应用附加数据提供紧凑且静态分配的存储区域。该有效负载数据的最大大小通过静态常量 kMaxUserDataSize 固定为恰好 3 字节 [SWS_TS_14231] 。用于缓冲实际有效负载数据字节的是 ara::core::Array<ara::core::Byte, kMaxUserDataSize> 类型的数组 data [SWS_TS_14233] 。补充该缓冲区的是字段 size,该字段标明缓冲区中实际有效的有效负载数据字节数 [SWS_TS_14232] 。解读:根据头文件 ara/tsync/synchronized_time_base_status.h 中的定义位置,UserData 可能主要用作传输诸如控制标志或计数器等少量应用相关附加信息的状态字段。作为交互伙伴出现的通常是查询或传递同步时基状态的时钟源服务与接收应用程序。 问题 Q-a0fb20686141f042 (未决)
生命周期
作为普通的 C++ 结构体(值对象),UserData 没有复杂的内部生命周期,且完全不使用动态内存分配。实例通常在栈上创建,或作为上层状态结构的嵌入数据元素存在。初始化直接通过成员初始化或标准 C++ 赋值完成。关于所有权关系,该结构体遵循值语义:创建组件完全拥有其本地实例,并通过复制或引用将其传递给接口。由于 UserData 未实现内部同步机制或互斥锁,因此从多个线程对同一实例进行并发读写访问不是线程安全的。应用程序必须通过外部同步措施来确保并发访问的安全性,而在并发上下文中可以安全地使用彼此独立的实例。销毁操作不需要显式清理资源,因为包含的数据字段 data [SWS_TS_14233] 是静态预留的。
使用路径
典型使用路径包括数据缓冲区的填充、传递和评估。首先,发送或提供状态的组件创建 UserData 的实例。随后,将有效负载数据复制到数组 data 中,最多允许占用 kMaxUserDataSize 个字节 [SWS_TS_14231] , [SWS_TS_14233] 。紧接着,该组件将字段 size 设置为实际写入的字节数 [SWS_TS_14232] 。在接收端,处理应用程序首先检查 size 的值 [SWS_TS_14232] 。如果 size 大于零,应用程序将从缓冲区 data [SWS_TS_14233] 中精确读取该有效前缀。该范围之外的值,即从索引 size 到 kMaxUserDataSize - 1,将被忽略,因为它们可能包含未定义或过期的残留数据。
错误场景
UserData 中的错误情况主要由大小规格与缓冲区容量之间的不一致引起。如果字段 size 取值超过了所定义的 3 字节最大大小 kMaxUserDataSize [SWS_TS_14231] ,则违反了规范限制。在这种情况下,迭代读取 data [SWS_TS_14233] 时可能面临缓冲区溢出或访问超出定义数组边界的风险。另一个风险在于当 size 等于零时 [SWS_TS_14232] 错误读取 data,因为在该状态下不存在有效的有效负载数据。结构体本身不会生成错误码或异常;因此,先决条件(尤其是 size <= kMaxUserDataSize)的验证完全由应用编程逻辑负责。
本指南基于 AUTOSAR Adaptive R25-11 规范。所有说明均基于所引用的 SWS 要求。
分组依据 类别 历史
成员图 类图 Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
G
nara__tsync__UserData398
«struct»
UserData
+ data
+ kMaxUserDataSize
+ size
详细视图 此版本没有元素数据
常量 User data buffer (maximum size: kMaxUserDataSize). .
Maximum number of user data bytes. .
Number of valid user data bytes in data. .
点击条目以查看其关系。
基类 派生类 使用 被使用于 继承 自此版本起移除 用于 此类中无关联 函数 AI 评注 打开类页面 无法加载类页面。 调整顺序 调整宽度 调整大纲宽度 章节 阅读时间 SWS 引用 图表 放回中间 调整顺序或拖到标题栏 取消停靠 – 在内容中显示 移到中间栏 作为标签停靠到标题栏 元素 AI 模型 打开审计档案 档案 打开简短版本 打开中等版本 打开完整版本 恢复默认视图 已恢复默认视图 撤销 关闭详细视图 签名 基本信息 值 截至所选版本的最后一次更改 之后的下一次更改 单击:选择版本 无法放在此处:拖到标题栏可停靠,拖到中间栏可取消停靠。 新增 已更改 未更改 已移除 未包含 更改 内容无变化 首次出现于 移除于 没有可用的版本数据。 正在加载版本数据 … 文本 此版本未收录措辞 悬停或单击单元格:与所选版本比较 · 单击版本标题:选择版本 选择版本 属性 版本 元素 只有一个版本有措辞 PDF 中存在,原文尚未导入 首次采集原文 自 {rel} 起未更改 版本颜色 最早版本 最新版本
常量 / 变量文档
变量 data [SWS_TS_14233] Upstream: RS_TS_00014 原文尚未导入
ara::core::Array <ara::core::Byte , kMaxUserDataSize > data;
User data buffer (maximum size: kMaxUserDataSize). .
Status: valid/unmigrated
Version: rel:R25-11#1f27c5a4
Versionshistorie & Revisions (1 transition)
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_TS_14233@rel:R25-11#1f27c5a4
Point-in-Time History:
Release:
R25-11 (Current / Active) R20-11 R19-11
View Snapshot
Historical Snapshot:
× Back to current
🚫
Requirement entfallen: Dieses Element ist im gewählten Release nicht mehr enthalten.
Requirement Text as-of this release:
Reachable Artifacts & Dependents:
Date Actor Transition Reason / Rationale Campaign
2026-08-13 tool none → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record 2026-08-13-status-backfill
变量 kMaxUserDataSize [SWS_TS_14231] Upstream: RS_TS_00014 原文尚未导入
static constexpr std::size_t kMaxUserDataSize = 3u;
Maximum number of user data bytes. .
Header-Datei #include "ara/tsync/synchronized_time_base_status.h" Scope struct ara::tsync::UserData Symbol kMaxUserDataSize Typ std::size_t
Status: valid/unmigrated
Version: rel:R25-11#df87c9f1
Versionshistorie & Revisions (1 transition)
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_TS_14231@rel:R25-11#df87c9f1
Point-in-Time History:
Release:
R25-11 (Current / Active) R20-11 R19-11
View Snapshot
Historical Snapshot:
× Back to current
🚫
Requirement entfallen: Dieses Element ist im gewählten Release nicht mehr enthalten.
Requirement Text as-of this release:
Reachable Artifacts & Dependents:
Date Actor Transition Reason / Rationale Campaign
2026-08-13 tool none → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record 2026-08-13-status-backfill
变量 size [SWS_TS_14232] Upstream: RS_TS_00014 原文尚未导入
std::size_t size;
Number of valid user data bytes in data. .
Header-Datei #include "ara/tsync/synchronized_time_base_status.h" Scope struct ara::tsync::UserData Symbol size Typ std::size_t
Status: valid/unmigrated
Version: rel:R25-11#ddf624eb
Versionshistorie & Revisions (1 transition)
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_TS_14232@rel:R25-11#ddf624eb
Point-in-Time History:
Release:
R25-11 (Current / Active) R20-11 R19-11
View Snapshot
Historical Snapshot:
× Back to current
🚫
Requirement entfallen: Dieses Element ist im gewählten Release nicht mehr enthalten.
Requirement Text as-of this release:
Reachable Artifacts & Dependents:
Date Actor Transition Reason / Rationale Campaign
2026-08-13 tool none → valid/unmigratedmechanically 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 · 德文原文