(1)mysql插入时,单行连续插入效率极低,表现在内存暴涨!! 网上看到解释:内存insert时需要写硬盘,若insert数据量大于硬盘写入(或者写时需要其他sql操作,也算写操作)时,会cache在内存中,这样就会看到内存上涨。
(2)QList容器类的移除操作并不会释放内存; 意思是,不断向容器里添加数据,容器的容量会不断增大,移除后,数据体积小了,但容器容量并没有变小,解决的方法是swap()方法,会交换两个容器,从而释放出前一个容器的内存; 在QWT中使用curve绘图时,限制曲线数据点的大小,可以在容器达到一定大小时进行takefirst()操作,移除前面的数据,再进行数据插入操作。(有时间再试一下不swap)
(3)今天发现QTextEdit导致内存疯长,原来故障消息一直往里面加,没清掉。以后要注意,数据一定要流动起来,不管存文件还是送的数据库,不能堆在内存里!! 后来使用
ui.textEdit->document()->setMaximumBlockCount(100);来限制document的行数;