读取另一个线程中并发运行的 pthread 的本地数据
Read concurrently running pthreads' local data in another pthread
我已经从main调用了pthread(假设有10个线程),并希望在其中1个线程中访问与第一个线程同时运行的所有pthreads(来自其余9个线程)的本地数据。为此,首先我需要检查当时哪些线程都处于活动状态,然后访问其本地数据。有什么办法可以在C++做到这一点吗?
应使用互斥锁来防止多个线程同时访问数据。
线程没有本地数据。线程所属的进程分配了这些数据存储器页。所有线程都可以自由访问进程中内存的任何部分。现在,如果多个线程同时访问数据结构,这可能会导致问题。这就是需要同步的原因。
相关文章:
- 防止主数据类型C++的隐式转换
- 用于访问容器<T>数据成员的正确 API
- 嵌套在类中时无法设置成员数据
- 使用流处理接收到的数据
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 在cuda线程之间共享大量常量数据
- C++将文本文件中的数据读取到结构数组中
- 如何在C++中序列化结构数据
- 在C++中打印指向不同基元数据类型的指针的内存地址
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- 在c代码之间共享数据的最佳方式
- 链表,反向函数,数据结构
- 数据成员SFINAE的C++17测试:gcc vs clang
- C++浮点数据类型和字符串数据类型无法子到模板函数中
- 如何对点云数据进行排序
- 让 pthread 等待另一个数据
- 读取另一个线程中并发运行的 pthread 的本地数据
- 当 pthread 启动时,它是否需要互斥锁来访问之前在生成它的线程中写入的全局数据
- 如何在c++中使用pthread将数据从一个线程传递到另一个正在运行的线程