C++_关于Async、Packaged_task、Promise的总结
async 概述 用于简化异步任务执行的高级抽象 它的核心目标是让你能方便地启动一个任务并在未来获取其结果,而无需直接管理线程的生命周期、同步等底层细节 std::async可以看作是 std::promise, std::packaged_task和 std::thread的高...
async 概述 用于简化异步任务执行的高级抽象 它的核心目标是让你能方便地启动一个任务并在未来获取其结果,而无需直接管理线程的生命周期、同步等底层细节 std::async可以看作是 std::promise, std::packaged_task和 std::thread的高...
概述 首先,stack是一个容器适配器 理论上,任何提供了 push_back(), pop_back(), back()等操作的序列容器都可以作为 stack的底层容器 为什么默认是deque deque之所以成为默认选择,是因为它在以下几个方面取得了最佳平衡: 相对于vect...
概述 C++中的函数调用,本质上就是通过函数地址定位到进程地址空间的代码区中对应的指令序列,然后跳转执行 编译阶段 编译时 - 生成符号和调用指令 函数声明与符号生成 编译器看到函数 func 的声明(或定义)时,会将其名称作为一个符号(Symbol) 记录在目标文件(.o...
httplib使用 Get Post form-data 比较 Get 参数位置 url末尾(查询字符串或路径) 参数长度 受URL长度限制(通常2048字符内) 安全性 参数明文暴露在URL和浏览器历史中 幂等性 幂等(多次请求效果相同) 缓存 响应可被浏览器主动缓存 Post...
概述 C++中,thunk技术主要用于处理多继承和虚函数调用时复杂的this指针调整问题 在构造对象的过程中,为虚函数表(vtable)填充函数指针时,编译器可能会插入thunk代码,以确保后续通过基类指针调用虚函数时,this指针能被正确调整 触发场景 通过非首个基类指针调用派...
相关功能 定义 bool型 直接使用值 直接修改值 string型 直接使用 修改值 int型 其他编译单元引用 其他 问题 似乎不支持Windows风格的参数 似乎用--help会有奔溃,没研究原因
概述 PIMPL(Pointer to Implementation)是 C++ 中一个强大的设计模式,用于隐藏实现细节、减少编译依赖和提高接口稳定性 核心思想 分离接口与实现 公共头文件只声明接口 私有实现在单独的类中封装 公共类仅持有私有实现的指针 编译防火墙 实现 公共接口...
概述 Google开源的C++日志库,专为高性能、高可靠性场景设计,广泛应用于大型分布式系统(如Kubernetes) 优缺点 优点 高性能与线程安全 内部采用锁机制保证多线程安全,写入效率高(经Google生产环境验证) 异步I/O与缓冲区优化(如syncBuffer),减少系...
概述 关于shared_ptr智能指针对象管理内存的情况 不同的shared_ptr对象管理不同的内存 多个shared_ptr对象管理同一块内存 对于管理不同的内存 因为每个shared_ptr对象都有各自的控制块,因而引用计数独立,所有不存在问题 对于管理同一块内存 因为每个...
概述 微软开发的 C++ ETW(Event Tracing for Windows)库,专为简化Windows事件跟踪开发而生 核心功能 封装底层ETW API,提供面向对象接口 支持用户态和内核态事件跟踪 提供事件模式解析、数据提取等高级功能 支持同步/异步事件处理模式 ke...
搜索当前标签