菜鸟笔记
提升您的技术认知

C++ 笔记 第38页

栈区和堆区

菜鸟阅读 : 4353赞(1)

注意,这里所说的堆区和栈区指的是(虚拟)内存区域,跟数据结构中的堆栈不一样。 栈区和堆区概念   栈区(stack)—— 由编译器自动分配释放,存放局部变量的值、函数调用所需要维护的信息等。 栈区必须满足这样一条规则:先入栈的数据后出栈(F...

Linux下简易线程池

菜鸟阅读 : 2536赞(1)

线程池简介    线程池是可以用来在后台执行多个任务的线程集合。 这使主线程可以自由地异步执行其他任务。线程池通常用于服务器应用程序。 每个传入请求都将分配给线程池中的一个线程,因此可以异步处理请求,而不会占用...

C++智能指针及其简单实现

菜鸟阅读 : 1905赞(1)

本文将简要介绍智能指针shared_ptr和unique_ptr,并简单实现基于引用计数的智能指针。 使用智能指针的缘由   1. 考虑下边的简单代码: 1 int main() 2 { 3 int *ptr = new int(0); 4...

C++内存管理

菜鸟阅读 : 2237赞(1)

内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因...

C++ 虚函数表和虚函数指针机制

菜鸟阅读 : 2207赞(1)

虚函数的作用是实现派生类继承基类的接口和一个默认的实现 那么是如何实现这种机制的呢? 答案:通过虚函数表和虚函数指针实现。 class Base_VirtualFunction { public: int val; virtual void...

C++11并发——多线程std::mutex

菜鸟阅读 : 3622赞(2)

Mutex 又称互斥量,C++ 11中与 Mutex 相关的类(包括锁类型)和函数都声明在 <mutex> 头文件中,所以如果你需要使用 std::mutex,就必须包含 <mutex> 头文件。 <mutex...

C++11并发——多线程std::thread

菜鸟阅读 : 2795赞(2)

与 C++11 多线程相关的头文件 C++11 新标准中引入了四个头文件来支持多线程编程,他们分别是<atomic> ,<thread>,<mutex>,<condition_variable>...

c++11并发之std::thread

菜鸟阅读 : 2879赞(2)

构造函数如下: default (1) thread() noexcept; initialization(2) template <class Fn, class... Args> explicit thread (Fn&am...

std::lock_guard和std::unique_lock

菜鸟阅读 : 2477赞(0)

std::unique_lock也可以提供自动加锁、解锁功能,比std::lock_guard更加灵活   #include <QCoreApplication> #include <iostream> /...

智能指针unique_ptr

菜鸟阅读 : 5999赞(0)

成员函数 (1) get 获得内部对象的指针, 由于已经重载了()方法, 因此和直接使用对象是一样的.如 unique_ptr<int> sp(new int(1)); sp 与 sp.get()是等价的 (2) release...