gpt4 book ai didi

c++ - C++中线程安全的唯一ID生成

转载 作者:行者123 更新时间:2023-11-28 02:01:14 27 4
gpt4 key购买 nike

我在 C++ 应用程序生命中寻找线程安全的唯一 ID 生成,所以我创建了以下静态类。

class Utils {
public :
static int getUid();
};

int Utils::getUid() {
static std::atomic<std::uint32_t> uid;
uid = 0;
return ++uid;
}

任何建议,这是正确的方法吗。

最佳答案

这样修复:

class Utils {
public :
static int getUid();
};

int Utils::getUid() {
static std::atomic<std::uint32_t> uid { 0 }; // <<== initialised
// uid = 0; <<== removed
return ++uid;
}

关于c++ - C++中线程安全的唯一ID生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39447118/

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