- 博客(4)
- 收藏
- 关注
原创 STL find 算法、set内置find算法性能测试
时常会遇到从list中查找某个值是否存在,由于STL库中的list并未提供find方法,此时我们有两种选择(这里指通用方法,其他还有建立hash值索引等方法):一是通过STL算法中的find方法查找给定值;二是通过while循环对比给定值。基于这两种通用的方法,现做一个查找性能对比。对比方法:向list中存入大量的数据,分别通过这两种方法在该list中查找一个相同的给定数据值。给定值条件:...
2019-02-01 14:27:22 36
原创 线程池
下面将从线程的设计思路及线程池的使用进行说明。线程池管理主体设计思路是:1、封装线程管理对象 MyThread,用于线程创建、线程开启、线程睡眠、任务绑定等操作。2、封装空闲线程栈管理对象IdleThreadContainer,用于空闲线程栈的维护管理等操作。空闲的线程放于此栈中。3、封装忙碌线程队列管理对象BusyThreadContainer,用于忙碌线程队列的维护及管理等操作。忙碌的线程放于...
2018-03-12 22:54:10 260
原创 连接池
多线程操作的应用程序中,常会用到多个数据库连接。数据库连接创建及连接销毁比较耗费系统资源。在应对频繁的创建和销毁操作时,常需要创建数据库连接池,用以避免频繁的创建及销毁操作。现举例说明连接池(DataBase为封装的数据库操作对象,也可将该对象替换为其他对象,创建链接池)。头文件如下:#ifndef CONNECTPOOL_H#define CONNECTPOOL_H#include #
2018-01-17 23:05:10 185
原创 QT信号和槽参数传递复杂结构的数据
QT信号和槽函数间参数传递只能是通用数据类型,有时信号和槽函数间需要传递map等结构复杂的数据。实现复杂结构数据传递的主体思路是:将复杂结构的数据包装成通用数据类型(QVariant)放入信号及槽函数中传递,在槽函数中使用时再转化为原来的数据类型。本次以传递参数类型:QMap为例。1、首先包含头文件:#include , 在使用信号类(或主窗口类)的构造函数中,通过如下的方式注册数据类型:
2018-01-09 21:44:59 2890
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人