已合并
implicitAnimator和modifierManager使用thread_local伴随线程生命周期 #25201
chensiyi_CE创建于 2025年9月5日
implicitAnimator和modifierManager使用thread_local伴随线程生命周期 #25201
已合并
chensiyi_CE创建于 2025年9月5日
refs/pull/25201/head合入到master
chensiyi_CE
chensiyi_CE成员
2025年9月5日
  1. thread_local implicitAnimator and modifierManager in RSUIContext

Description:
implicitAnimator和modifierManager使用thread_local伴随线程生命周期
Issue number:
https://gitee.com/openharmony/graphic_graphic_2d/issues/ICWIVT
Test & Result:

CodeCheck:

类型 自检项 自检结果
多线程 在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护 自检结果:pass
定义全局变量,在多个函数中都有操作时,需要加锁保护 自检结果:pass
内存操作 调用外部接口时,确认是否对返回值做了判空判断,尤其外部接口返回了nullptr的情况,避免进程崩溃 自检结果:pass
内存操作优先使用安全函数,并检查其返回值 自检结果:pass
注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII) 自检结果:pass
隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针 自检结果:pass
外部输入 所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等 自检结果:pass
注意外部字符串数据有无尾0 自检结果:pass
外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性 自检结果:pass
敏感信息 注意日志中打印敏感信息需匿名化 自检结果:pass
数学运算 代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转 自检结果:pass
初始化 类成员、局部变量使用前需初始化 自检结果:pass
权限管理 作为系统服务对外提供了接口(或RSCmd),是否做了权限保护和校验,只允许申请了权限的应用访问 自检结果:pass

L0新增用例自检结果

  • [✔] 是,有新增L0用例,且完成自检
likedislike
Pull Request已成功合入, 合并人@
(感谢 chensiyi_CE 的贡献)
chensiyi_CEchensiyi_CE成员
2025年9月5日 关联了 openharmony/graphic_graphic_2d Issue ICWIVT
chensiyi_CEchensiyi_CE成员
2025年9月5日 指派了 lijj01 参与评审
chensiyi_CEchensiyi_CE成员
2025年9月5日 指派了 wangxinpeng 参与评审
chensiyi_CEchensiyi_CE成员
2025年9月5日 指派了 江南 参与评审
chensiyi_CEchensiyi_CE成员
2025年9月5日 指派了 ZhangPeng 参与评审
此处折叠了96条消息 查看更多
openharmony_ciopenharmony_ci成员
2025年9月6日 合并了Pull Request(通过 API 合并)
openharmony_ciopenharmony_ci成员
2025年9月6日 添加了   merged 标签
openharmony_ciopenharmony_ci成员
2025年9月6日 移除了   waiting_for_review 标签
openharmony_ci
openharmony_ci成员
2025年9月7日 评论:

提交次数已达到或超过3次,为了保证上库效率和减少构建资源浪费,请点击链接观看学习视频,谢谢!http://ci.openharmony.cn/workbench/video/videoDisplay

likedislike
chensiyi_CE
chensiyi_CE成员2025年9月8日进行代码检视1
chensiyi_CE
chensiyi_CE2025年9月8日评论:

ok,后续上多实例版本时统一显式写成 static thread_local

likedislike