- 博客(18)
- 资源 (21)
- 收藏
- 关注
原创 redis RDB数据持久化
RDB数据持久化目录RDB数据持久化原理实现步骤自动数据持久化手动RDB持久化备份恢复原理 RDB持久化:将Redis在内存中的数据定时dump到磁盘上,实际操作过程是fork一个子进程,先将数据写入临时文件,写入成功后,再替换之前的文件,用二进制压缩存储 RDB持久化实现步骤自动数据持久化redis支持自动数据持久化,(默认开启)。在red...
2020-05-07 17:55:15
379
转载 Unity 协程用法总结
Unity 协程用法总结协程:协同程序,在主程序运行的同时,开启另外一段逻辑处理,来协同当前程序的执行,注意协程不是线程,只是具有线程特点的“伪协程”。协程的使用需要直接或间接的继承MonoBehavior。协程的执行原理协程函数的返回值必须是IEnumerator,它是一个迭代器,可以把它当成执行一个序列的某个节点的指针,它提供了两个重要的接口,分别是Current(返回当前指向的...
2020-04-20 16:38:04
1934
1
转载 Skip List(跳跃表)原理详解与实现
目录1 Skip List 介绍2 Skip List 定义以及构造步骤3 Skip List 完整实现4 Skip List 概率分析1 Skip List 介绍Skip List是一种随机化的数据结构,基于并联的链表,其效率可比拟于二叉查找树(对于大多数操作需要O(log n)平均时间)。基本上,跳跃列表是对有序的链表增加上附加的前进链接,增加是以随机化的方...
2019-08-02 16:12:37
803
原创 Qt/HTML交互库QtWeb+Cjax的实现
Qt与HTML通信在项目少量的使用还可以,大面积使用就比较麻烦,没有固定的模式接口。为了方便使用,封装了通信的库Qt端为QtWeb、HTML端为Cjax。通信逻辑QtWeb库1、QtWeb库主要实现内容及功能:提供WebView用于加载显示Html页面Html请求信号。收到前端请求后发出请求信号,信号中带有请求数据请求超时处理。前端发送的请求,上层为及时处理回复则进行超时处理主动推送消息到Html...
2018-03-01 16:47:45
2290
转载 实现QT与HTML页面通信
1. 前言最近,C++和WEB本地混合应用开发模式逐渐流行起来,个人也认为标记语言描述的界面是界面开发的一个发展趋势。WPF、Java FX,当然也少不了Html。基于Html的界面在开发效率,可移植性上都十分有优势,所以也被很多程序采用随着HTML5技术风生水起,Qt开发团队用近一年的时间开发了一个全新的基于Chromium的浏览器引擎Qt WebEngine,以支持面向未来的Hybrid应用...
2018-03-01 15:32:09
6028
2
原创 PC软件开发中BC/S设计架构的实现
公司现有项目是C/S结构,客户端采用Qt进行的开发,已经开发维护近10年,结构稳定成熟。现开发一个新的项目,主要的功能需求一致,只是展示方式需要重新设计实现。公司倾向于向B/S方向转变,新项目直接采用B/S开发,所有功能模块都需要重新设计实现,周期比较长,成本比较大。在之前的项目中有过在Qt中嵌入html界面的经验,所以想采用BC/S的模式进行开发是否可行,原本的server端保持不动,c...
2018-02-28 16:57:38
4323
原创 设计模式之策略模式(Strategy Pattern)
1、传统程序设计思考 面向对象的编程方法中“继承”是一个重要的特性,在面向对象的编程中经常使用。通过使用继承可以提高代码的复用、提高开发的效率。大大提高了程序的维护和功能扩充的遍历性。按照“继承”和“封装”的原则我们通常这样设计程序,如下图: 设计一个基类Animal类,提取了共同的特性抽象了Animal的两个行为:Sound和Move。派生出Dog、Cat、
2017-09-18 00:16:59
675
原创 需掌握的模式设计原则
1、找出应用中可能需要变化之处,把它们独立出来,不要和那些需要变化的代码混在一起 如果每次新的需求一来,都会使某些方面的代码发生 变化,那么你就可以确定,这部分的代码需要被抽出来,和其他稳定的代码有所区分。这个原则另一个思考方式:把会变化的部分取出并封装起来,以便以后可以轻易的改动或扩充此部分,而不影响不需要改变的其他部分。2、针对接口编程、不针对实现编程 “针对接口编程
2017-09-17 22:11:05
261
转载 程序员最值得关注的10个C开源项目
程序员最值得关注的10个C开源项目jopen 2014-10-24 15:35:28 • 发布摘要: Webbench 是一个在 linux 下使用的非常简单的网站压测工具。它使用 fork ()模拟多个客户端同时访问我们设定的 URL,测试网站在压力下工作的性能,最多可以模拟 3 万个并发连接去测试网站的负载能力。Webbench 使用C语言编写, 代码实在太简洁,源码加起来不到
2016-05-25 23:09:13
1553
转载 使用Qt库时出现winsock2.h和windos.h包含顺序错误
同时使用Qt与mms.lite库时时,在互相包含头文件时出现了winsock2.h和windos.h包含顺序错误的出错信息(一大堆重定义错误)。查找mms.lite库发现在sysincs.h中已经有对这两个头文件包含顺序的处理,如下所示:/* winsock2.h MUST ALWAYS BE BEFORE windows.h to override defs in *//* wins
2016-02-01 16:27:24
6103
转载 Qt stylesheet 详解
stylesheet本文不准备谈样式表的使用。因为Manual中介绍的很清楚了,给的例子也都很不错。再就是我本身对CSS语法不太熟,术语把握不好,qss用的不多。不过,有两个问题新手似乎特容易迷惑,简单提一下:QWidget直接派生类的样式表不起作用典型的表述(之一)是,从QWidget派生一个窗口,使用stylesheet设置背景,在designe
2015-12-19 11:34:12
7315
转载 goahead移植
1.网上下载goahead-3.1.2-0-src.tgz包 2.解压 tar -zxvf goahead-3.1.2-0-src.tgz 3.编译 cd goahead-3.1.2-0 make CC=arm-hisiv100-linux-gcc ARCH=arm
2015-11-13 18:15:30
1615
原创 goahead Web Server 环境搭建
GoAhead WebServerGoAhead WebServer,它是一个源码,免费、功能强大、可以在多个平台运行的嵌入式WebServer。GoAhead WebServer的主要特性有:1. 支持ASP2. 嵌入式的javascript3. 标准的CGI执行4. 内存中的CGI处理GoFroms5. 扩展的API6. 快速响应,每秒可处理超过50个请
2015-11-13 17:20:02
15624
2
转载 类继承中,通过基类指针delete释放,是否会造成内存泄漏
[序言]很久不写C/C++技术贴了,算一下自己用C++也有7~8年了,虽然现在用Delphi比较多,但是对C++还是有一份热情.前段时间在优快云看到一个帖子,让我感到非常失落, 很多人都没有引用权威文献来针对这个问题进行讨论,如果没有全文文献的引用,那么讨论将会是一个持久战.要结束这种情况,还是以书为准。如果大家都喜欢探讨技术,可以加入我的QQ:643439947一起学习[建议]
2015-10-30 10:46:58
4257
原创 QT之线程
一、QT中线程使用原则在实际的开发中线程的使用频率很高,尤其是在开发界面程序的时候。QT的UI线程负责界面的事件相应,而一些复杂的逻辑运算可以放在一个子线程中进行。QT中线程的使用有一个原则,对于界面的操作只能在UI主线程中操作,子线程不能对UI界面进行操作。如果在子线程中需要对界面进行操作,可以使用信号通知UI主线程,由UI主线程进行操作。
2015-09-08 13:48:27
2046
原创 QML之TimeEdit的实现
在使用QML设计界面的时候,用到了时间编辑框,发现QML中没有提供类似QTWidget中的QTimeEdit控件。后来没有办法就自己使用TextField和Calendar封装了一个TimeEdit组件1、自定义编辑框TimeInput组件时间编辑框通常都是一个输入框,前部分显示时间后面有个日历的小图标,点击可以显示日历进行选择日期。文本输入框QML中之后TextField和TextInp
2015-08-19 12:46:41
4822
原创 LinuxC\C++实现终端界面中光标的定位和清屏操作
printf("\033[47;31mhello world\033[5m"); 47是字背景颜色, 31是字体的颜色, hello world是字符串. 后面的\033[5m是控制码.颜色代码:QUOTE:字背景颜色范围: 40--49 字颜色: 30--3940: 黑 30: 黑41:
2015-08-17 23:13:47
6234
转载 QTabWidget添加自定义的按钮
原本的QTabWidget没有支持在标签后面添加自定义的按钮的方法。想在后面添加自定义的功能按钮需要重写QTabWidget类,自己实现按钮图标的重绘和鼠标点击判断等操作。1、使用到的主要事件函数: (1) void paintEvent(QPaintEvent* event); 用于在QTabWidget标签后面绘制操作按钮 (2)void mouseP
2015-08-17 22:27:22
6274
qemu模拟器
2015-11-16
goahead3.5.0
2015-11-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人