提高Qt开发软件运算性能提升

编译器minGW32,release版本,大部分操作在线程循环里面更容易体现出来

1、网上有说opencv像素处理使用直接获取Mat对象的像素块的数据指针,例如

for (int row = 0; row < h; row++) {

uchar* uc_pixel = image.data + row * image.step;

for (int col = 0; col < w; col++) {

uc_pixelcol = 255 - uc_pixelcol;

}

和直接像素操作

image.at<uchar>(i,j) = xx; 我发现差异不大;

我还是选择了第二种方法

在Mat赋值操作最好不要使用clone()

2、使用QString::Number()和**QString("%1").arg(xx)**这两种转换方式,我发现第二种效果比较好;

3、两种延时操作,都可以有效防止UI卡顿

Qt中关于一种网上流传延时方法Bug说明_c# tomsecssinceepoch_莫听穿林打叶声儿的博客-CSDN博客

连接面提供两种延时方法,最下面一种明显比第一种要高效;

4、关于串口,网口的数据高速通讯操作

有人喜欢使用Qt信号槽接收数据,我个人很不喜欢,我更喜欢使用单独线程去主动读取串口或网口数据,这样也做到后台数据和前台更新的数据分离,比如下面连接中就是使用线程主动读取串口数据案例;

艾德堡HP-100推拉力计,Qt串口、曲线经典应用(开源)_艾德堡数显拉力机软件-CSDN博客

5、如果有更高效的方法请在评论区留言......

相关推荐
代码不会写6 分钟前
Apache Iceberg:架构原理、读写机制、性能优化与生态
性能优化·架构·apache·iceberg
Quz2 小时前
QML 基础按钮:Button、RoundButton 与 DelayButton
qt
Quz2 小时前
QML ToolTip 组件:图标、多行文本与阴影
qt
xcyxiner3 小时前
DicomViewer14(读取图像按固定窗宽窗位显示)
qt
kirs_ur17 小时前
CXL(Compute Express Link)— 内存扩展的未来
服务器·数据库·性能优化
Ashley的成长之路19 小时前
前端性能优化实战手册·第2篇:资源加载策略全解
前端·性能优化·资源加载·http/3·性能优化实战·资源加载优化
qq_2975746721 小时前
RuoYi框架二次开发系列(五)性能优化、Redis缓存实战、分布式部署、接口限流与安全加固生产方案
redis·缓存·性能优化
马里马里奥-1 天前
从零搭建AI Agent工具链的技术文章大纲
开发语言·qt
GitLqr1 天前
Flutter 3.44 性能飞跃:深度解析 Android Platform View 的 HCPP 新特性
android·flutter·性能优化
Quz1 天前
QML 与 JavaScript 交互方式:内联函数、外部文件、信号槽与工作线程
javascript·qt