
C++并发编程 _ 基于锁的数据结构
意义 设计并发数据结构,意味着多个线程可以并发的访问这个数据结构,线程可对这个数据结构做相同或不同的操作,并且每一个线程都能在自己的自治域中看到该数据结构。且在多线程环境下,无数据丢失和损毁,所有的数据需要维持原样,...
意义 设计并发数据结构,意味着多个线程可以并发的访问这个数据结构,线程可对这个数据结构做相同或不同的操作,并且每一个线程都能在自己的自治域中看到该数据结构。且在多线程环境下,无数据丢失和损毁,所有的数据需要维持原样,...
结构化绑定 结构化绑定允许我们解构和绑定返回的元组、数组或结构体中的值,使得代码更加简洁和可读 #include <tuple> #include <iostream> std::tuple&...
一次性事件 C++标准库模型将这种一次性事件称为期望future 当一个线程需要等待一个特定的一次性事件时,在某种程度上来说它需要知道这个事件在未来的表现形式。之后,这个线程会周期性的等待或检查,事件是否出发 在检查...
定义 DEFINE_bool: boolean DEFINE_int32: 32-bit integer DEFINE_int64: 64-bit integer DEFINE_uint64: unsigned 64...
使用介绍 默认的 #include "spdlog/spdlog.h" int main() { //Use the default logger (stdout, multi-threaded,...
指针 概述 通常所说的“指针”就是指 指针类型的变量,它保存了 内存中另一个变量的地址 通过这个指针保存的地址,我们可以 间接访问 指针指向的内存位置的数据 这个过程称为 解引用(dereferencing) 示例 ...
关于 #include <string> //C++ #include <string.h> //C using namespaces std; 声明 string str; 调用string...
导出SOUI对象到Lua 为了在SOUI中使用lua,需要使用lua内核实现一个SOUI::IScriptModuler接口。 namespace SOUI { class SWindow; /*! \brief A...
线程池 创建线程池方法一 调用async_factory_impl::create创建线程池 但是这个函数实际作用是用于创建一个记录器 由于需要一个线程池对象参数,所以在创建记录器之前做了个检查,如果还不存在线程池,...
语言特性 指定初始化 按名称初始化结构体成员,提高可读性 struct Config { int width; int height; std::string title; }; Config cfg { .widt...