Sylvan

C++信号处理

C++信号处理 C++ 中的信号处理(signal handling)指的是程序在运行过程中响应特定异步事件(通常由操作系统发送的信号)的能力。信号机制在 UNIX/Linux 系统中较常见,主要用于处理诸如中断、终止、算术错误、非法访问等异常事件。 信号的基本概念 信号是一种异步通信机制,由操作系统发送给进程,以通知发生了某种事件。每种信号都有一个编号和名称,例如: ...

C++智能指针

C++智能指针 智能指针(Smart Pointer) 是 C++ 中用于自动管理动态内存的一种机制,能有效避免手动 new / delete 带来的内存泄漏、重复释放、悬挂指针等问题。 什么是智能指针 智能指针本质上是一个封装了原始指针的类模板对象,它负责: 自动释放所管理的内存; 控制对象的所有权(谁该释放); 提供与原始指针一样的操作方式(支持 *, -> ...

C++内存模型

C++内存模型 C++ 内存模型是 C++11 标准引入的重要概念,用于规定 多线程程序中变量在不同线程之间的可见性与操作顺序,使得并发程序行为可预测。它定义了原子性、可见性和有序性规则。 一、内存模型的基本概念 1. 什么是内存模型(Memory Model)? C++ 的内存模型描述了: 多线程环境下,变量的值是如何在不同线程中传播的 编译器和 CPU 可以如何重排序...