摘要: 在 C++ 中,callable 类型(可调用类型)是指可以像函数一样被调用的对象 C++ 中有多种不同的可调用对象类型,它们可以通过函数调用运算符 () 被调用。 常见的 callable 类型包括: 普通函数(普通函数、静态函数、成员函数) 函数指针 仿函数(函数对象) Lambda 表达式 s 阅读全文
posted @ 2024-09-29 18:17 牛马chen 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 线程创建 头文件#include thread 是在 C++11 标准中引入的。 C++11 标准引入了对多线程编程的标准化支持,其中包括了线程的创建、管理和同步机制。 头文件提供了基本的线程支持库,允许开发者直接使用c++线程进行并行编程,而无需依赖操作系统特定的 API #include <io 阅读全文
posted @ 2024-09-29 18:15 牛马chen 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 多线程环境 并非所有的语言都提供了多线程的环境。即便是C++语言,直到C++11标准之前,也是没有多线程支持的。 在这种情况下,Linux/Unix平台下的开发者通常会使用POSIX Threads,Windows上的开发者也会有相应的接口。 但很明显,这些API都只针对特定的操作系统平台,可移植性 阅读全文
posted @ 2024-09-29 18:00 牛马chen 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 线程的数量应当与处理器的数量相匹配,否则可能会导致性能的下降而不是提升,尤其是在只有一个处理器的情况下。 线程是程序执行的最小单位,它可以在不同的处理器核心上并发执行,利用多核处理器的能力来提升计算效率。 处理器(CPU)核心是物理上能够执行指令的单元。一个处理器可以有一个或多个核心,每个核心都能够 阅读全文
posted @ 2024-09-29 15:57 牛马chen 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 线程安全(Thread Safety)指的是,当多个线程并发执行某段代码时,不会出现竞态条件(Race Condition)等问题,程序能够按照预期正确运行。 一个线程安全的函数,即使在多线程环境下被多个线程同时调用,也能确保其执行的正确性,不会因为共享资源的并发访问而引发错误。 线程安全的定义 线 阅读全文
posted @ 2024-09-29 15:53 牛马chen 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 在 C++ 中,-> 操作符可以被重载,用于对象的指针成员访问。 重载后的 -> 操作符主要用于模拟指针访问行为,常见于智能指针的实现等复杂场景。 -> 操作符重载后的调用触发流程: 在对象上使用 -> 操作符时,编译器按照以下步骤处理: 检查对象类型是否有 operator->() 重载: 如果对 阅读全文
posted @ 2024-09-29 14:48 牛马chen 阅读(9) 评论(0) 推荐(0) 编辑