摘要: 第一种方法:不使用锁,在多线程环境下不能正常工作 【注】:静态成员变量的初始化必须在类的外部进行,并且需要通过 类作用域解析运算符(::)来指定变量所属的类。 第二种方法:加锁确保多线程环境下只创建一个实例,但加锁是一个非常耗时的操作(每次访问都加锁,性能较低)。 加锁操作: 使用了 std::lo 阅读全文
posted @ 2024-12-01 17:42 朝槿yys 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 初始化列表相较于在构造函数体中赋值,有以下几个优势: 1. 避免多次构造 对于某些类型的成员变量(如 const 或引用类型),它们必须在初始化列表中进行初始化,不能在构造函数体中赋值。例如: class Example { private: const int a; // 常量成员 int& re 阅读全文
posted @ 2024-11-24 22:03 朝槿yys 阅读(11) 评论(0) 推荐(0) 编辑
摘要: HTML中,使用<link>标签先后加载两个CSS文件,其加载和解析顺序主要遵循以下规则: CSS文件的加载与解析在现代浏览器中是边加载边解析的过程,而不是等所有CSS文件加载完毕后再进行解析。 1. 加载顺序:CSS文件按照<link>标签在HTML中的书写顺序加载。例如: <link rel=" 阅读全文
posted @ 2024-11-19 22:01 朝槿yys 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 字节对齐(alignment)和字节填充(padding)是优化内存访问效率和确保数据结构正确存储的重要机制。 了解字节对齐和填充的原理可以帮助我们更好地设计数据结构,并且减少因不合理的内存布局引起的性能问题或程序错误。 1. 字节对齐(Alignment) 字节对齐是指在内存中存储数据时,将数据放 阅读全文
posted @ 2024-11-10 23:18 朝槿yys 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 进程调度算法决定了进程在何时、以何种顺序被分配到 CPU 上执行。不同的调度算法适合不同类型的操作系统和应用需求,以下是一些常用的进程调度算法: 1. 先来先服务调度(FCFS: First-Come, First-Served) 算法原理:按进程到达的先后顺序分配 CPU,先到达的进程先被处理。 阅读全文
posted @ 2024-11-10 22:44 朝槿yys 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 并行是指多个任务在同一时刻在多个处理器或者多核处理器上同时执行。并发是指多个任务在同一时间间隔内交替执行,但在任意时刻只有一个任务在执行。 并行需要硬件上的支持,而并发需要软件上的支持。并行是物理上的同时发生,而并发是逻辑上的同时发生。 1. 定义 并发(Concurrency): 指在同一时间段内 阅读全文
posted @ 2024-11-10 21:32 朝槿yys 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 1. 进程(Process) 定义:进程是操作系统资源分配的基本单位,一个进程包含了程序的代码、数据、文件、内存等资源。每个进程之间都是独立的,拥有独立的地址空间。 特性: 独立性:每个进程之间是独立的,不能直接访问其他进程的内存空间。 资源占用:进程会占用较多的系统资源,例如内存、文件描述符等。 阅读全文
posted @ 2024-10-30 23:23 朝槿yys 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 并发控制(Concurrency Control)是指在多线程或多进程环境中,确保多个操作在共享资源上的访问不会发生冲突或产生不一致的情况。并发控制的核心目标是在允许并发操作的同时,保证系统的正确性、数据的一致性和完整性。 在并发环境下,不同的线程或进程可能会同时访问共享资源(例如变量、文件或数据库 阅读全文
posted @ 2024-10-30 23:19 朝槿yys 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 1. C++内存区域 C++程序的内存通常分为以下几部分: ① 代码区(Code Segment) 存储程序的机器代码,即编译后的可执行代码。代码区通常是只读的,以防止代码在运行时被意外修改,确保安全性。 代码区在程序加载时由操作系统分配。 ② 全局/静态区(Data Segment) 全局变量和静 阅读全文
posted @ 2024-10-29 17:53 朝槿yys 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 在C++中实现多态有两种主要方式: 编译时多态(静态多态):通常通过函数重载和运算符重载来实现。这种多态在编译时已经确定,不需要虚函数。 运行时多态(动态多态):通过虚函数和继承来实现。这种多态在运行时根据实际的对象类型决定调用哪个函数。 1. 重写/覆盖(Override) 定义:重写是指在派生类 阅读全文
posted @ 2024-10-28 22:44 朝槿yys 阅读(10) 评论(0) 推荐(0) 编辑