android 空调hvac CPU 占用45%分析
这次有一个黑屏问题但是这个问题主要原因是main prio5 tid1 Native | groupmain sCount1 dsCount0 flags1 obj0x71d08518 self0xb400007bdab5e7b0 | sysTid1154 nice0 cgrpforeground sched0/0 handle0x7d6178d4f8 | stateS schedstat( 6574416887 7326888929 18805 ) utm440 stm216 core1 HZ100 | stack0x7fea186000-0x7fea188000 stackSize8192KB | held mutexes native: #00 pc 000000000009b0f4 /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl4) native: #01 pc 0000000000057de0 /apex/com.android.runtime/lib64/bionic/libc.so (ioctl156) native: #02 pc 0000000000053a1c /system/lib64/libbinder.so (android::IPCThreadState::talkWithDriver(bool)296) native: #03 pc 0000000000054a08 /system/lib64/libbinder.so (android::IPCThreadState::waitForResponse(android::Parcel*, int*)60) native: #04 pc 0000000000054778 /system/lib64/libbinder.so (android::IPCThreadState::transact(int, unsigned int, android::Parcel const, android::Parcel*, unsigned int)184) native: #05 pc 000000000004d0f4 /system/lib64/libbinder.so (android::BpBinder::transact(unsigned int, android::Parcel const, android::Parcel*, unsigned int)120) native: #06 pc 0000000000123dcc /system/lib64/libandroid_runtime.so (android_os_BinderProxy_transact(_JNIEnv*, _jobject*, int, _jobject*, _jobject*, int)152) at android.os.BinderProxy.transactNative(Native method) at android.os.BinderProxy.transact(BinderProxy.java:550) at com.desaysv.ivi.vdb.IVDBus$Stub$Proxy.get(IVDBus.java:170) at com.desaysv.ivi.vdb.client.bind.VDConnector.getOnce(VDConnector.java:339) at com.desaysv.ivi.vdb.client.bind.VDRouter.getOnce(VDRouter.java:210) at com.desaysv.ivi.vdb.client.VDBus.getOnce(VDBus.java:204) at com.android.systemui.e.i.f.d.b(MediaProxyImp.java:80) at com.android.systemui.e.i.f.d.e(MediaProxyImp.java:65) at com.android.systemui.e.i.f.d.a(MediaProxyImp.java:29) at com.android.systemui.e.i.f.d$1.onVDNotify(MediaProxyImp.java:43) at com.desaysv.ivi.vdb.client.bind.VDConnector.dispatchEvent(VDConnector.java:961) - locked 0x0398bab8 (a java.util.ArrayList) at com.desaysv.ivi.vdb.client.bind.VDConnector.access$200(VDConnector.java:48) at com.desaysv.ivi.vdb.client.bind.VDConnector$1.handleMessage(VDConnector.java:106) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7705) at java.lang.reflect.Method.invoke(Native method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1001) 01-22 16:52:45.904959 483 8155 E ActivityManager: Reason: Input dispatching timed out (8a87819 NavigationBar0 (server) is not responding. Waited 5118ms for MotionEvent(deviceId3, source0x00001002, displayId0, actionDOWN, actionButton0x00000000, flags0x00000000, metaState0x00000000, buttonState0x00000000, classificationNONE, edgeFlags0x00000000, xPrecision1.0, yPrecision1.0, xCursorPositionnan, yCursorPositionnan, pointers[0: (722.0, 1640.0)]), policyFlags0x62000000)日志分析SystemUI 主线程在处理 VDBus 的 onVDNotify 回调时同步执行了 VDBus.getOnce()导致主线程被阻塞超过输入分发超时时间从而触发 ANR。修复策略不在 onVDNotify 回调中发起同步 VDBus.getOnce()Binder 调用改为直接使用 notify 数据避免主线程阻塞但是于此同时发现了空调CPU占用45%客户觉得高了针对此问题我这边设立了专项进行分析442D HvacPageView: isAutoHvacConfig:0行516506: 01-2216:49:56.20281724422442D HvacPageView: onProgressChanged: 7false 行516604: 01-2216:49:56.31451024422442D HvacPageView: executeUpdateBlowModeAnimation isSupHeatState:false,isSupCoolState:false;airConditionConfig:1 ionConfig:0;pm25Config:1 行516614: 01-2216:49:56.31558224422442D HvacPageView: executeUpdateBlowModeAnimation purry_type:3;fragranceOn:false;ionConfig:0 行516899: 01-2216:49:56.46580524422442D HvacPageView: onHvacCirculationModeStatus:2行516900: 01-2216:49:56.46591224422442D HvacPageView: updateCirculationModeStatus:2行516901: 01-2216:49:56.46610624422442D HvacPageView: isAutoHvacConfig:0行516907: 01-2216:49:56.46951824422442D HvacPageView: onHvacBlowSpeedAuto:1行516908: 01-2216:49:56.47269624422442D HvacPageView: onHvacBlowSpeedAuto invalidate 行517127: 01-2216:49:56.53126324422442D HvacPageView: onWindSpeedStatus:8行517128: 01-2216:49:56.53129224422442D HvacPageView: isAutoHvacConfig:0行517130: 01-2216:49:56.53179924422442D HvacPageView: onProgressChanged: 8false 行517131: 01-2216:49:56.53482824422442D HvacPageView: executeUpdateBlowModeAnimation handler 行517176: 01-2216:49:56.61551624422442D HvacPageView: mPvBlowModeFace:true;mPvBlowModeFoot:false;mPvBlowModeWindow:false 行517372: 01-2216:49:56.74083224422442D HvacPageView: onAutoStatus:0行517384: 01-2216:49:56.74225724422442D HvacPageView: updateBlowModeBg isSlideChange: var:0 行517389: 01-2216:49:56.74319424422442D HvacPageView: setBlowModeAnimationAndSelected: facetrue, footfalse, windowfalse,powerStatetrue行517390: 01-2216:49:56.74327724422442D HvacPageView: isAutoHvacConfig:0行517394: 01-2216:49:56.74434524422442D HvacPageView: startBlowWindFacePag var:1 shouldload:false 行517395: 01-2216:49:56.74443024422442D HvacPageView: loadAndPlayFacePag currentFacePath:pag/blow_face_open_day.pag;filePath:pag/blow_face_open_day.pag 行517397: 01-2216:49:56.74483224422442D HvacPageView: startBlowWindFootPag var:0 shouldload:false 行517398: 01-2216:49:56.74489024422442D HvacPageView: loadAndPlayFootPag currentFootPath:pag/blow_foot_close_day.pag;filePath:pag/blow_foot_close_day.pag 行517403: 01-2216:49:56.74538724422442D HvacPageView: startBlowWindWindowPag var:0 shouldload:false 行517404: 01-2216:49:56.74542024422442D HvacPageView: loadAndPlayWindowPag currentWindowPath:pag/blow_window_close_day.pag;filePath:pag/blow_window_close_day.pag 行517405: 01-2216:49:56.74543824422442D HvacPageView: setBlowModeAnimationAndSelected run 行517479: 01-2216:49:56.85150824422442D HvacPageView: executeUpdateBlowModeAnimation isSupHeatState:false,isSupCoolState:false;airConditionConfig:1 ionConfig从附近时间点来看在执行吹脚吹脸的吹风动效同时也在收到mcu的风量变化的回调和加载小图标的动效在涉及多个动效执行并且多个回调的场景情况下,CPU占用45%是正常的之前其他项目出现CPU峰值70%甚至146%的情况同时T1N项目来看T1N 的20260107数据CPU前台1min是31.6%峰值146%和路试数据来看2025年9月路试峰值48%6 x 8核 48%当前45% CPU占用是正常现象拉会系统同时一起分析此问题反馈空调应用比较特殊涉及动效场景多不超过100%都不觉得高因此最后澄清不是问题

相关新闻

数字化转型关键一步:商贸物流软件的核心功能与应用场景

数字化转型关键一步:商贸物流软件的核心功能与应用场景

数字化转型关键一步:商贸物流软件的核心功能与应用场景在商贸物流行业数字化浪潮下,越来越多企业意识到:转型不是“全面颠覆”,而是找到适配自身的关键抓手。很多企业盲目投入数字化建设,却因软件功能与业务脱节、场景…

2026/7/3 15:04:43 阅读更多 →
HOPE架构深度解析:高阶多项式展开与MLP记忆新范式

HOPE架构深度解析:高阶多项式展开与MLP记忆新范式

HOPE架构深度解析: 高阶多项式展开与MLP记忆新范式 ——从Transformer的算力困境到线性架构的范式革命—— 技术专栏博客 2026年1月 目录 目录 第一部分:困境与突围——后Transformer时代的算力战争 1. Transformer架构的物理边界与理论缺陷 1.1 二次复杂度(Quadr…

2026/7/3 15:04:46 阅读更多 →
彼得林奇对公司研发投入的分析标准

彼得林奇对公司研发投入的分析标准

彼得林奇对公司研发投入的分析标准 关键词:彼得林奇、公司研发投入、分析标准、股票投资、企业评估 摘要:本文围绕彼得林奇对公司研发投入的分析标准展开深入探讨。彼得林奇作为投资界的传奇人物,其投资理念和方法影响深远。研发投入对于公司…

2026/7/4 15:30:50 阅读更多 →

最新新闻

TPAFE0808与MKV44F256VLH16构建多通道信号采集系统

TPAFE0808与MKV44F256VLH16构建多通道信号采集系统

1. 项目背景与核心需求在工业自动化、医疗设备和消费电子领域,多通道信号采集与系统监测一直是关键需求。TPAFE0808作为一款8通道模拟前端芯片,搭配MKV44F256VLH16这款高性能微控制器,能够构建一套稳定可靠的多通道信号处理系统。这套组合特别…

2026/7/6 12:33:13 阅读更多 →
灰度共生矩阵 (GLCM) 实战:Python 提取 4 大纹理特征,准确率提升 15%

灰度共生矩阵 (GLCM) 实战:Python 提取 4 大纹理特征,准确率提升 15%

灰度共生矩阵(GLCM)实战:Python提取4大纹理特征提升分类准确率纹理分析一直是计算机视觉领域的重要研究方向,想象一下你正在开发一个木材质量检测系统,如何让机器像经验丰富的质检员一样,通过表面纹理判断木材等级?这正…

2026/7/6 12:33:13 阅读更多 →
协方差矩阵与皮尔森相关系数:从2维到N维数据的3步可视化分析实战

协方差矩阵与皮尔森相关系数:从2维到N维数据的3步可视化分析实战

协方差矩阵与皮尔森相关系数:从2维到N维数据的3步可视化分析实战在数据科学和机器学习领域,理解变量之间的关系是建模和特征工程的基础。当我们面对高维数据集时,如何快速识别特征间的关联模式?协方差矩阵和皮尔森相关系数矩阵就像…

2026/7/6 12:33:13 阅读更多 →
数据预处理3大核心挑战:特征工程、缺失值与异常值处理的Python解决方案

数据预处理3大核心挑战:特征工程、缺失值与异常值处理的Python解决方案

数据预处理3大核心挑战:特征工程、缺失值与异常值处理的Python解决方案 数据预处理是数据科学项目中最耗时却最关键的环节。当面对真实世界中的脏乱数据集时,如何高效处理缺失值、识别异常点并构建有效特征,直接决定了后续建模的天花板高度。…

2026/7/6 12:31:11 阅读更多 →
Sentinel-2 S2MTCP 数据集实战:1520对影像的自动化变化检测流程

Sentinel-2 S2MTCP 数据集实战:1520对影像的自动化变化检测流程

Sentinel-2 S2MTCP 数据集实战:1520对影像的自动化变化检测全流程解析1. 环境配置与数据准备工欲善其事,必先利其器。在开始处理S2MTCP数据集前,我们需要搭建一个高效的Python工作环境。推荐使用conda创建独立环境以避免依赖冲突:…

2026/7/6 12:31:11 阅读更多 →
AI登录技术解析:从验证码到人脸识别的教育系统安全实践

AI登录技术解析:从验证码到人脸识别的教育系统安全实践

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 1. 先搞清楚“AI登录”到底在说什么 看到“济宁中考登录是AI?”这个标题,很多人的第一反应可能是“登录系统被…

2026/7/6 12:31:11 阅读更多 →

日新闻

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2与MySQL单元测试兼容性:5个关键SQL语句差异与规避方案1. 单元测试中的数据库兼容性挑战在Java开发领域,单元测试是保证代码质量的重要环节。当应用涉及数据库操作时,测试环境的搭建往往成为开发者的痛点。H2数据库因其轻量级、内存模式和快…

2026/7/6 0:01:17 阅读更多 →
Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘 【免费下载链接】rbtray A fork of RBTray from http://sourceforge.net/p/rbtray/code/. 项目地址: https://gitcode.com/gh_mirrors/rb/rbtray 你是否厌倦了Windows任务栏上密密麻麻的图标&…

2026/7/6 0:01:17 阅读更多 →
Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C 运行时库一键安装终极指南:告别DLL缺失烦恼 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过这样的情况:下载了…

2026/7/6 0:05:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻