C++ 并发编程
Created|Interview
一、并发基础核心组件口诀:线程对象要管理,互斥锁来保安全,原子操作不可拆,条件变量通信忙1.1 std::thread - 线程管理 构造方式: 默认构造:创建空线程对象 初始化构造:thread t(func, args...),传入函数和参数 移动构造:支持线程所有权转移,不支持拷贝 生命周期管理: join():主线程等待子线程完成,阻塞当前线程 detach():线程独立运行,与主线程分离 关键注意:线程对象销毁前必须调用join()或detach(),否则程序崩溃 常见陷阱:局部线程对象销毁时,若线程函数仍在运行会导致崩溃(解决:使用detach()或确保join()被调用) 1.2 std::mutex - 互斥锁 基本功能:保护共享资源,确保同一时间只有一个线程访问 核心方法:lock()(加锁)、unlock()(解锁)、try_lock()(尝试加锁,非阻塞) 使用建议:配合RAII包装器使用,避免忘记解锁导致死锁 1.3 std::lock_guard -...
linux:POSIX 线程库 (`pthread`) 详解与多线程编程实践
Created|Linux
一、pthread 库概述POSIX 线程 (POSIX Threads),简称 pthread,是 C 语言中实现多线程编程的标准库。它提供了一套丰富的 API,用于创建、同步和管理线程。pthread 库在 Unix、Linux 和 macOS 等系统上广泛支持,是开发高性能并发程序的重要工具。 核心组件 线程管理:创建、终止和等待线程 同步机制:互斥锁 (Mutex)、读写锁、条件变量 线程同步:信号量、屏障 线程特定数据:每个线程独立的数据存储 二、线程的基本操作1. 线程创建与终止pthread_create 函数12int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine) (void *), void *arg); 参数说明: thread:指向 pthread_t 类型的指针,用于存储新创建线程的 ID attr:线程属性设置,NULL...


Categories
- AI日报4
- C++80
- C-Code21
- CMake3
- CS501
- Computer-Networking39
- Computer-Organization1
- Data Structures and Algorithms1
- Data-Structures6
- Essay1
- Essays7
- Foundational Syntax and Core Concepts3
- Git3
- HTTP2
- Interview5
- Lcov2
- Leetcode131
- Linux38
- Linux Internals2
- List1
- Lists1
- MQTT8
- MYSQL3
- MySQL1
- Operating-Systems7
- PKGCONF1
- Redis14
- STL3
- UML1
- XML1
- lock1
- 代码提交1
- 函数模板2
- 工具与实践1
- 工厂模式2
- 算法1
- 类图1
- 系统与网络2
- 编译1
- 设计模式8
- 链表1
Archives
- 2026年03月 4
- 2026年01月 2
- 2025年12月 11
- 2025年11月 10
- 2025年10月 8
- 2025年09月 18
- 2025年08月 8
- 2025年07月 8
- 2025年06月 8
- 2025年05月 8
- 2025年04月 8
- 2025年03月 8
- 2025年02月 8
- 2025年01月 8
- 2024年12月 9
- 2024年11月 7
- 2024年10月 10
- 2024年09月 10
- 2024年08月 10
- 2024年07月 8
- 2024年06月 8
- 2024年05月 9
- 2024年04月 9
- 2024年03月 9
- 2024年02月 7
- 2024年01月 9
- 2023年12月 8
- 2023年11月 9
- 2023年10月 8
- 2023年09月 6
- 2023年08月 7
- 2023年07月 9
- 2023年06月 8
- 2023年05月 11
- 2023年04月 8
- 2023年03月 8
- 2023年02月 8
- 2023年01月 8
- 2022年12月 9
- 2022年11月 14
- 2022年10月 10
- 2022年09月 7
- 2022年08月 6
- 2022年07月 8
- 2022年06月 10
- 2022年05月 7
- 2022年04月 7
- 2022年03月 4
- 2022年02月 5
- 2022年01月 5
Website Info
Article Count :
412
Runtime :
Total Word Count :
685.2k
Last Update :