• 5564阅读
  • 7回复

[提问]关于QT处理程序速度跟不上的问题 [复制链接]

上一主题 下一主题
离线feiyang0725
 

只看楼主 倒序阅读 楼主  发表于: 2012-07-26
我用qt做接收端,自己写个程序来发送,毫秒级别的发送数据,接收端接到数据后根据数据来更新图片颜色,并将修改结果保存在数据库里面。
可是现在的结果是我发送的多,接收到的少。接收端处理不过来。。。
离线XChinux

只看该作者 1楼 发表于: 2012-07-26
如果只是接收而不处理其它的话,应该是比服务器端发送速度只快不慢(同等运行环境下),出现慢,那就可能是你接收数据后的处理过程影响的,那就要看这部分处理过程如何优化。比如可以将数据放到队列中,由另一个线程去处理这些数据。写数据库时,不要每次都写,也可以放到一个线程中,积累到一定时候再使用事务处理批量写入,这样性能好些。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线zhy282289
只看该作者 2楼 发表于: 2012-07-26
收到数据不处理放入队列,另一线程处理,
为什么我脸这么胖~
离线feiyang0725

只看该作者 3楼 发表于: 2012-07-27
我是1ms更新一次。。放在进程里面进程处理不过来。主要是图片颜色刷新不过来。。
离线jdwx

只看该作者 4楼 发表于: 2012-07-27
回 3楼(feiyang0725) 的帖子
没有必要,人眼1秒最多可以分辨15帧图像,再多就看不清了。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线dxfans

只看该作者 5楼 发表于: 2012-07-27
是你接收不快,还是你接收过来后处理不过来导致接收不快??
离线feiyang0725

只看该作者 6楼 发表于: 2012-07-27
主要是发送端以毫秒级别发送,接收端接收的数据就是以毫秒,只是接收端接收到数据之后要进行判断解析,实时修改图片颜色及添加到数据库里面。
现在的主要问题是毫秒级别的发送,界面接卡死了。但是程序没有死,依然在向数据库里面写,只是写的很慢。。但是还是会写完,当我关闭发送端,等一会接收端也会恢复正常。。
离线feiyang0725

只看该作者 7楼 发表于: 2012-07-27
之前也想过开辟新线程来完成。可是要是以毫秒级别,那不是一秒开辟1000个线程,程序直接死掉。。
快速回复
限100 字节
 
上一个 下一个