05 2021 档案

摘要:C++ 编程总结 整形和string的相互装换 常见的用法和范围界定见代码 #include<bits/stdc++.h> #include <climits> using namespace std; int main() { //string 2 Integer && Integer 2 str 阅读全文
posted @ 2021-05-20 23:47 Jamgun 阅读(49) 评论(0) 推荐(0)
摘要:gitlab 添加 CICD 什么是CICD CI - 持续集成 开发人员的自动化流程 代码的新更改会定期构建、测试并合并到共享存储库中 可以解决在一次开发中有太多应用分支,从而导致相互冲突的问题 CD - 持续交付 开发人员的更改会自动进行错误测试并上传到存储库(如 GitHub 或容器注册表), 阅读全文
posted @ 2021-05-20 23:40 Jamgun 阅读(205) 评论(0) 推荐(0)
摘要:C extern 关键词分析 原文链接 作用 首先我们区分两个 术语 声明 (declaration) : 仅表示,存在 变量 / 函数,变量的类型 / 函数的参数和返回值,并不分配内存 / 定义实现 定义 (definition) : 除了 声明 的作用外,还为变量分配内存 / 定义函数实现。 声 阅读全文
posted @ 2021-05-17 23:39 Jamgun 阅读(63) 评论(0) 推荐(0)
摘要:shared_future 获得方式 只能由 future 得到 作用 同 future 区别 可以多线程、多次访问 shared state 原理 shared state 指针 + 引用计数 基本函数 构造函数、析构函数和赋值操作等 // valid 情况 1 :false,2 :同参数,且参数 阅读全文
posted @ 2021-05-13 23:54 Jamgun 阅读(194) 评论(0) 推荐(0)
摘要:Future 获得方式 std::async 的返回值 std::packaged_task 的消费方式 std::promise 的消费方式 作用 查询 状态 等待 返回值 获取 返回值 以此配合完成线程同步 原理 shared state 指针 基本函数 构造函数、析构函数和赋值操作等 // 构 阅读全文
posted @ 2021-05-13 23:53 Jamgun 阅读(194) 评论(0) 推荐(0)
摘要:packaged_task 背景 启发于function pointer 采用类似 promise 的设计 方便的获取线程运行结果 原理 生产者 - 消费者模型 基本函数 生产函数,分两步 设置value或者exception 设置shared state // 设置value或者exception 阅读全文
posted @ 2021-05-13 23:52 Jamgun 阅读(145) 评论(0) 推荐(0)
摘要:背景 不想利用async提供的线程模型 还想方便的获取线程运行结果 原理 生产者 - 消费者模型 基本函数 生产函数,分两步 设置value或者exception 设置shared state template <class R&> // 设置value或者exception后,立即将shared 阅读全文
posted @ 2021-05-13 23:49 Jamgun 阅读(313) 评论(0) 推荐(0)
摘要:背景 C++11添加了thread,可以通过std::thread()方便的创建线程 thread不能方便的获取线程运行结果 用法 返回值为std::future(下面会讲到),第一个参数policy,第二个参数为function,可以是lamda template< class Function, 阅读全文
posted @ 2021-05-13 23:48 Jamgun 阅读(350) 评论(0) 推荐(0)