2022年4月27日
摘要:
非类的成员函数以及成员变量 inline修饰的函数或变量(c++17开始可以修饰变量)在全局保留一份; static修饰的函数或者变量会在各自的编译单元都保留一份; static函数的局部static变量也会有多份,inline函数的static变量只有一份; static inline 修饰的函数
阅读全文
posted @ 2022-04-27 21:06
独立树
阅读(3518)
推荐(0)
摘要:
为什么要使用并发编程? 在本世纪初之前,大部分开发人员不常需要关心并发编程;用到的时候,也多半只是在单处理器上执行一些后台任务而已。只有少数为昂贵的工作站或服务器进行开发的程序员,才会需要为并发性能而烦恼。原因无他,程序员们享受着摩尔定律带来的免费性能提升,而高速的 Intel 单 CPU 是性价比
阅读全文
posted @ 2022-04-27 21:04
独立树
阅读(569)
推荐(0)
2022年4月25日
摘要:
std::future C11 中增加的线程类,使得我们能够非常方便的创建和使用线程,但有时会有些不方便,比如需要获取线程返回的结果,就不能通过 join() 得到结果,只能通过一些额外手段获得,比如:定义一个全局变量,在子线程中赋值,在主线程中读这个变量的值,整个过程比较繁琐。C 提供的线程库中提
阅读全文
posted @ 2022-04-25 22:13
独立树
阅读(257)
推荐(0)
摘要:
目的 读出类似这样的配置文件 abc:abc 并且对文件进行一个简单的加密操作 注意的点 配置信息结构体key和value要自己设定,这不是在python中 对于C语言中动态内存分配记得要提供“一个返回有效行数的函数” config.h #include <stdio.h> #include <st
阅读全文
posted @ 2022-04-25 09:32
独立树
阅读(168)
推荐(0)
2022年4月24日
摘要:
对齐模数的查看和修改 #pragma pack(show) 我们加入这样一条预编译指令,进行编译后即可查看当前的对齐模数 warning C4810: 杂注 pack(show) 的值 == 8 #pragma pack(4) 我们也可以执行这样的一条指令来修改当前的对齐模数 结构体内存对齐规则 从
阅读全文
posted @ 2022-04-24 20:19
独立树
阅读(469)
推荐(1)
2022年4月23日
摘要:
C++11 提供了一个原子类型 std::atomic,通过这个原子类型管理的内部变量就可以称之为原子变量,我们可以给原子类型指定 bool、char、int、long、指针等类型作为模板参数(不支持浮点类型和复合类型)。 由于原子操作是通过指令提供的支持,因此它的性能相比锁和消息传递会好很多。**
阅读全文
posted @ 2022-04-23 22:26
独立树
阅读(923)
推荐(0)
2022年4月22日
摘要:
条件变量是 C11 提供的另外一种用于等待的同步机制,它能阻塞一个或多个线程,直到收到另外一个线程发出的通知或者超时时,才会唤醒当前阻塞的线程。条件变量需要和互斥量配合起来使用,C11 提供了两种条件变量: condition_variable:需要配合 std::unique_lockstd::m
阅读全文
posted @ 2022-04-22 21:13
独立树
阅读(334)
推荐(0)
摘要:
解决多线程数据混乱的方案就是进行线程同步,最常用的就是互斥锁,在 C++11 中一共提供了四种互斥锁: std::mutex:独占的互斥锁,不能递归使用 std::timed_mutex:带超时的独占互斥锁,不能递归使用 std::recursive_mutex:递归互斥锁,不带超时功能 std::
阅读全文
posted @ 2022-04-22 20:36
独立树
阅读(253)
推荐(0)
2022年4月21日
摘要:
在某些特定情况下,**某些函数只能在多线程环境下调用一次,比如:要初始化某个对象,而这个对象只能被初始化一次,**就可以使用 std::call_once() 来保证函数在多线程环境下只能被调用一次。使用 call_once() 的时候,需要一个 once_flag 作为 call_once() 的
阅读全文
posted @ 2022-04-21 21:00
独立树
阅读(80)
推荐(0)
摘要:
在 C++11 中不仅添加了线程类,还添加了一个关于线程的命名空间 std::this_thread,在这个命名空间中提供了四个公共的成员函数,通过这些成员函数就可以对当前线程进行相关的操作了。 get_id() 调用命名空间 std::this_thread 中的 get_id() 方法可以得到当
阅读全文
posted @ 2022-04-21 20:43
独立树
阅读(158)
推荐(0)