C++11 无锁队列实现与解析说明
使用C++11利用CAS原理实现无锁队列。因为在多线程服务器中使用了一个消息队列,该消息队列使用了两把锁控制读写,因此效率损失较大,故探索多生产者多消费者的无锁队列以提升性能。本文引用了CSDN xin_hen的观点和代码并做出了一定调整。无锁队列无需用户在外围控制锁来保证队列的线程安全问题,减少因为锁带来的性能开销。CAS(Compare and swap, 对比后交换),这是一种所有CPU都支持的原子操作,由于其原子性,可以被用来实现各类无锁数据结构。其在C++11中的atomic中被支持,因此可以实现跨平台的开发。
OceanBase学习笔记
本章是我因需学习OB时记录的内容,其主要工作就是将OBCA考试的PPT记录下来,将其中可能的重点标注,从而达到强化记忆的效果。OBCA 认证主要讲解 OceanBase 的发展历程、应用案例、产品架构、核心功能、部署安装等知识。帮助您理解多副本一致性协议、数据可靠及高可用、在线水平扩展、分布式事务等 OceanBase 的重要特性。OBCA 认证主要面向具备 IT 通用基础能力的学员,了解至少一门关系型数据库(MySQL 或者 Oracle),对分布式系统或分布式事务有基本了解,适合初级数据库管理员,初级应用开发人员,合作伙伴驻场服务人员等。如果对各位有所帮助,可以点赞打赏一下哟~
BAT批处理脚本-获取当前日期
在Windows上使用Bat批处理脚本获取当前日期并输出,可以运行在Windows XP上。可以适应计算机的语言、时区和时间表示设置,得到稳定的系统日期。本文使用了WMIC命令来实现获取当前日期
CentOS RedHat免密登录时关闭SSH严格模式
在CentOS RedHat免密登录时关闭SSH严格模式,实现免密登陆。在使用VSCode的RemoteSSH连接远程RedHat服务器的时候发现总是链接失败,直接使用ssh可以免密登录。经过检查发现服务器默认设置了严格模式。
摄影:上海
《上海》,FUJIFILM X-S10
摄影:郑州人民公园
FUJIFILM X-S10,摄于中国河南省郑州市郑州人民公园
OpenCV实现二维码识别与定位
使用Python OpenCV实现二维码的识别与定位。这篇文章被做成了我的B站[在下小乔大家好]的[闲视]系列视频中,可以到我的B站观看。在家太闲,因此想找点事干,突然想起来我可以拍拍视频找机会挣个外快,于是我就思考了一下,找到了一个比较常见、简单但需要一定门槛的东西。最终决定,那就做一个二维码扫描吧。
实现鼠标点击上飘字体的效果
使用JavaScript实现鼠标点击时出现上漂字体的效果。不信的话你点点试试看?这里是富强、民主、文明、和谐、自由、平等、公正、法治、爱国、敬业、诚信、友善~
JS实现用户离开页面标题变动
使用JavaScript实现当用户离开页面时判断并在标题栏显示不一样的效果正如你所见,这个网站上使用了JS用来判断当前用户是否离开本页面。当你离开本页面时,标题栏会显示:快回来快回来~ 王政乔当你返回本页面时,标题又自动恢复成原来的样子。这是怎么实现的呢?接下来教你如何使用