gpt4 book ai didi

c++ - 关于使用 QThreadStorage 的线程安全

转载 作者:太空宇宙 更新时间:2023-11-04 07:38:39 25 4
gpt4 key购买 nike

这是一个线程问题,我基本上是从这里开始制作线程安全的库的。我的用例如下 -

struct <>
{

int thread_specific_value;
}

1) 例如旋转 5 个线程。

2) 每个线程在上述数据结构中进行操作并存储thread_specific_value。这是在每个线程初始化时动态分配的,并添加到 QThreadStorage。

3) 一旦所有线程返回到主线程,我喜欢访问所有线程的errno 值并进行一些处理。在我从主线程中删除线程之前,是否可以获取其存储数据的信息并存储在主线程的特定存储中。

简而言之,我如何遍历所有线程特定存储数据的 QThreadStorage 并从主线程进行一些处理?

最佳答案

存储在 QThreadStorage 中的数据只能从放置它的线程访问。时期。如果你想从其他线程访问相同的数据,你必须将它额外地存储在别处。特别是,线程特定值在线程退出时被销毁;如果您想保留该值,请在线程退出之前将其保存在某个地方。

总之,不要尝试使用QThreadStorage进行线程间通信。这不是它的目的。

关于c++ - 关于使用 QThreadStorage 的线程安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6448668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com