gpt4 book ai didi

c++ - 每个线程的局部静态变量

转载 作者:IT老高 更新时间:2023-10-28 22:22:59 26 4
gpt4 key购买 nike

假设我有一个类,它在初始化后创建一个线程并在其中运行一个方法,其中声明了一个静态变量:

void method()
{
static int var = 0;
var++;
}

如果我创建更多类的对象,例如 3 个,那么该方法将在 3 个不同的线程中被调用 3 次。之后 var 将等于 3。如何完成功能,每个线程都有自己的静态 var 独立于其他线程。我将不胜感激。

最佳答案

您可以使用 thread_local 关键字来指示对象具有线程存储持续时间。你可以这样使用它:

static thread_local int V;

如果您想了解更多关于存储类说明符的信息,可以查看 CppReference .

关于c++ - 每个线程的局部静态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31609173/

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