看代码编译展开 https://cppinsights.io/
benchmark https://quick-bench.com/
编译开销 https://build-bench.com/
看编译成的汇编 https://gcc.godbolt.org/
完整的声明格式: [capture list] (params list) mutable exception-> return type { function body } 例子: [](int a, int b) -> bool { return a < b; } 捕获: 值捕获 int main() { int a = 123; auto f ...
memory_order_relaxed 没有同步或顺序制约,仅对此操作要求原子性 memory_order_release 对写操作施加 release 语义,在代码中这条语句前面的所有读写操作都无法被重排到这个操作之后 当前线程内的所有写操作,对于其他对这个原子变量进行 acquire 的线程可见 当前线程内的与这块内存有关的所有写操作,对于其他对这个原子变量进行 c...
BufferPool Innodb为了解决磁盘上磁盘速度和CPU速度不一致的问题,在操作磁盘上的数据时,先将数据加载至内存中,在内存中对数据页进行操作。 Mysql在启动的时候,会向内存申请一块连续的空间,这块空间名为Bufffer Pool,也就是缓冲池,默认情况下Buffer Pool只有128M。 简单的LRU: 新数据插入到链表头部; 每当缓存命中(即缓存数据被访问)...
C++ memory order
brpc学习-bthread