协程概念
协程是一个可以暂停执行以便稍后恢复的函数。
协程是无堆栈的:通过返回给调用者来暂停执行,并且恢复执行所需的数据与堆栈分开存储。
2025年10月13日
C++20带来了coroutine特性, 同时新的execution也在提案过程中, 这两者都给我们在C++中解决异步问题带来了新的思路. 但对比其他语言的实现, C++的协程和后续的execution都存在一定的理解和封装成本, 本系列的分享我们将围绕基本的原理, 相应的封装, 以及剥析优秀的第三方实现, 最终结合笔者framework落地的情况来展开.
2025年10月13日
本文编写:@万钰臻 @唐湘润 @赵旭阳
合作同学:@袁一博 @王明哲 @杨勇勇 @黄冰尧
引言
K/N 的内存管理器和 GC,和主流虚拟机基本一样,主要功能如下:
K/N 使用自己的 custom 内存分配器,每个线程有自己的 tlab
默认垃圾回收器通过 Stop-the-world 标记和并发清除收集器,并且不会将堆分代
2025年10月13日
第一大问题:malloc和new区别
malloc 是 C 语言的内存分配函数,简单但不支持对象初始化。
new 是 C++ 中的运算符,功能更强大,能够同时进行内存分配和对象初始化,并且支持异常处理。我们可以从以下6个方便进行对比。
1. 语言级别
malloc:是 C 语言中的标准库函数,用于分配内存。C++ 也可以使用 malloc,但一般推荐使用 new。