
C++并发编程_同步并发(Condition_variable)
等待事件或其他条件 如果一个线程正等待着第二个线程完成一项任务,它有几个选择。 可以一直检测共享数据(由互斥量保护)中的标识,并且让第二个线程在完成任务时设置该标识。 浪费资源 使用std::this_thread:...
等待事件或其他条件 如果一个线程正等待着第二个线程完成一项任务,它有几个选择。 可以一直检测共享数据(由互斥量保护)中的标识,并且让第二个线程在完成任务时设置该标识。 浪费资源 使用std::this_thread:...
概述 zlib库是一个广泛使用的压缩/解压缩库 下面实现是用了zlib 1.3版本的代码和相关库 具体是使用了zlib源码中带的minizip 其中的minizip扩展提供了处理ZIP文件的功能 解压 在解压之前可能...
shared_ptr 概述 C++ 标准库中的一种智能指针,用于自动管理动态分配的对象的生命周期 主要机制是通过引用计数(Reference Counting)来追踪有多少个 shared_ptr 实例共享管理同一个...
Gcc 和 Clang __attribute__ ((__visibility__("hidden"))) 用于设置符号的可见性(visibility)属性 __visibility__(&qu...
导读 explicit 将构造函数声明为explicit,禁止编译器执行非预期(不是我们想要的)的类型转换。 除非我们有一个很好的理由,允许构造函数被用来进行隐式类型转换,否则我们应该把它声明为explicit的。 ...
自旋锁 用ATOMIC_FLAG_INIT进行了flag的初始化 它确保了flag的初始状态是清除(或说“未设置”)状态 lock调用了test_and_set方法来试图获取锁 test_and_set会检查flag...
6大组件 容器 vector list deque set map 从实现的角度,STL容器是class template 算法 sort search copy ... 从实现的角度,STL算法是function ...
timer timer 毫秒级别的精度。 <boost/timer.hpp> using namespace boost; // 开始计时 timer t; // 可度量的最大时间,小时为单位 t.ela...
34 区分接口继承和实现继承 概述 在C++的面向对象编程中,继承可以用于两种目的:接口继承和实现继承 理解并区分这两种继承方式有助于设计更清晰、可维护和灵活的类结构 接口继承 子类继承基类的接口,但可以重新定义(覆...
概述 TCP是一种面向连接的协议,提供了可靠、有序和错误检测机制的字节流服务 与无连接的UDP协议相比,TCP强调数据完整性和可靠性 特点 可靠性 TCP确保所有数据包按顺序到达,如果丢失或出错,它们将被重新传输 面...
搜索当前分类