微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

windows – 为什么:可见,控制分配了影响应用程序CPU使用率的TA?

如果TAction链接一个对象,如TToolButton(TToolBar的项目)或TActionClientItem(TActionToolBar的项目),并且该对象在运行时可见,那么无论何时在表单中移动鼠标(除工具栏之外的任何地方),似乎基于可见TA的数量cpu上进行额外加载,这与在前面提到的任一条上没有看到任何TAction链接项时移动鼠标相比.

很明显,额外负载的显着百分比完全取决于您运行的是什么类型的装备,但我注意到当您拥有一个应用程序时,实际差异可能很大:

>很多可见的TAction链接
>一个已经为onMouSEOver事件执行次要计算的自定义组件,例如更改控件的外观
>自定义视觉样式

所以问题是为什么可见项目链接的TAction组件会影响鼠标移动的处理?

动作的设计基于动作的空闲时间更新.移动鼠标时,应用程序会收到大量排队的消息.每次清空队列时,应用程序都被视为空闲,并且所有操作都会更新.这可能导致高cpu利用率.

这个问题在VCL中众所周知并得到承认.例如,看看TApplication.ActionUpdateDelay.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐