深入解析同步IO、异步IO、阻塞IO、非阻塞IO及IO多路复用的概念、区别与应用场景,结合C语言代码示例,帮助开发者全面理解Linux网络I/O模型
介绍了如何在C++中结合使用协程和io_uring来实现异步I/O操作。通过一个简单的TCP echo服务器示例,展示了协程如何简化异步编程,提高代码的可读性和维护性。
全面解析C++20协程的原理与实现,涵盖Promise、Coroutine Handle、关键字用法及状态机设计,深入探讨协程的生命周期管理与异常处理。通过详细的代码示例,展示协程在异步编程中的实际应用,帮助开发者掌握C++协程的核心概念与高效使用技巧。
深入探讨C++中的右值引用、std::move和std::forward的使用方法及其实现原理,结合实例讲解RVO(返回值优化)的工作机制,帮助开发者高效管理资源。
C++中变量的生命周期与作用域是有差别的,再结左值引用和右值引用,引用折叠,这次就来浅谈一下C++中变量的生命周期。
介绍了如何实现一个支持泛型和排序功能的链表。首先回顾了Go自带链表的源码,包括Element和List结构体以及insert、remove、move等核心操作函数。接着详细阐述了通过归并排序算法为链表添加排序功能的实现过程,展示了sort、mergeSort和merge等函数的代码,并对比了之前插入排序的实现方式。文章还分析了归并排序的时间复杂度和空间复杂度,探讨了在数据量较大时的适用性。最后总结了此次实现的目的和收获
本文介绍了从 Hexo 到 Hugo 的博客迁移过程,包括配置文件设定、自定义主题、添加阅读进度条、友链页面等实用技巧。涵盖 Stack 主题的自定义样式调整和页面优化,帮助博客作者提升网站加载速度和个性化定制体验。
探索 Linux io_uring 异步 I/O 接口,通过 liburing 库实现高效 TCP 服务。本文深入 io_uring 的基础概念,包括 Submission Queue 和 Completion Queue,并通过示例代码演示如何初始化、提交 I/O 请求和处理完成事件。了解 io_uring 如何提升 I/O 密集型应用的性能,以及在实际部署中需要注意的错误处理和连接管理。
redis在 6.0 版本加入了ACL支持,虽然已经发布很久了,但是这个命令属于不太常用的命令,导致很多人对ACL还不太了解。比较好的文档就是redis [ACL的官方文档](https://redis.io/docs/management/security/acl/) ,其他网上搜索到的相关知识大多数不全面,尤其中文文档缺失比较多。