- 博客(57)
- 收藏
- 关注
原创 C++ 设计模式
C++11语法规定,局部静态变量在第一次使用时进行初始化,如果存在多线程访问的情况,需要保证其初始化是线程安全性的。对象间的一对多关系,当一个对象状态发生改变时,依赖于它的对象都会得到通知并更新状态。因为存在一个抽象工厂类,所以增加产品时,也需要增加一个生产这个产品的工厂类。相对于简单工厂,优点是增加产品时,不需要修改工厂代码,而是新开一个工厂。抽象工厂通常会定义多个工厂方法,每个工厂方法用于创建一个特定类型的产品。优点:1、算法可以自由切换 2、避免使用多重条件判断 3、扩展性好。
2024-04-12 23:47:16
404
原创 Qt 线程
一、继承QThread,实现void run() 函数。二、继承QObject,调用moveToThread函数。这种方式槽函数被信号触发时,将在线程中执行。该类的事件处理函数将全部在该线程中执行。
2024-04-05 17:50:20
368
原创 Qt 数据库驱动未装载MYSQL
6.可以执行mingw32-make install或手动将qsqlmysql.dll文件 拷贝到 mingw73_32/plugins/sqldrivers下,(qsqlmysql.dll属于是qt中与mysql client连接部分的代码,光有它还不能连接mysql服务器,即3306端口)7.将mysql-connector-c-6.1.3-win32 下的libmysql.dll 文件拷贝到mingw73_32/bin下,(连接mysql的代码始终在libmysql.dll中,所以这一步是必须的)
2024-03-10 16:28:45
581
原创 windows mysql 安装教程
记下随机密码,这是‘root’@'localhost'的密码,后面登录mysql会使用。8.将mysql的bin目录加入环境变量path,方便往后执行mysql命令。6.在cmd中执行第三条命令,登录mysql,输入之前记录的临时密码。5.打开服务,找到mysql服务,此时它未启动,所以启动它。4.执行cmd第二条命令,安装mysql服务。datadir为mysql 数据存放目录。2.解压并创建my.ini配置文件。basedir为mysql根目录。成功登录,但必须修改密码。1.下载mysql安装包。
2024-03-06 10:47:57
641
1
原创 MyCat Docker 搭建与测试
mycat 是mysql分库分表的中间件,由java编写,本次进行mysql、mycat 的docker搭建,理解mycat的原理与特性。
2023-06-10 00:04:31
2381
原创 go 大文件的两种方式
服务端代码:不必担心什么边界问题,因为标准库已经做好了limitreader 限制,就和json传输一样。如果需要分片传输,则将控制参数(chunk、chunksize)放入header、或放入body,可以使用4字节+控制数据+文件数据的格式,其中4字节表示控制数据的长度。经过测试:二进制文件、图片、视频均可以通过此方式传输。
2023-06-09 21:22:19
1289
原创 Etcdctl 命令v3
2.回收,所有绑定在其上的key将消失。5.从某个历史版本开始监听key。8.获取大于键的键值对(>a)一、v3必须导出环境变量。3.删除时,显示键值对。7.获取过往版本的值。2.观察一个范围的键。
2023-05-27 23:24:19
1311
原创 Golang 1.18 新特性模糊测试
模糊测试(fuzz testing, fuzzing)是一种软件测试技术。其核心思想是將自动或半自动生成的随机数据输入到一个程序中,并监视程序异常,如崩溃,断言(assertion)失败,以发现可能的程序错误,比如内存泄漏。模糊测试常常用于检测软件或计算机系统的安全漏洞。——维基百科。
2023-05-20 00:16:48
681
原创 go pprof 性能测试
1.CPU性能分析CPU性能分析是最常见的性能分析类型。启动CPU分析时,运行时每隔10ms中断一次,采集正在运行协程的堆栈信息。程序运行结束后,可以根据收集的数据,找到最热代码路径。一个函数在分析阶段出现的次数越多,则该函数的代码路径(code path)花费的时间占总运行时间的比重越大。2.内存性能分析内存性能分析记录堆内存分配信息,忽略栈内存的分配。内存分析启动时,默认每1000次采样1次,这个比例是可以调整的。
2023-03-30 22:57:39
360
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人