首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >thread::get_id (C++11)没有锁吗?

thread::get_id (C++11)没有锁吗?
EN

Stack Overflow用户
提问于 2013-05-29 12:51:37
回答 1查看 436关注 0票数 4

我想要测试调用我的一个类的不同函数的线程。我有一个关键的时间线程,我不希望任何人调用可能从该线程调用new的函数。然而,由于这两个函数是公共的,所以我不能用语言来执行它。

我的想法是来测试线程id。假设我可以确保初始化线程id的调用位于正确的线程中,那么我只需在其他调用中调用thread::get_id(),并将其与我保存的线程id进行比较。

问题是,我也想在关键线程中测试这个ID,但是我无法锁定该线程.

因此,我的问题是:thread::get_id()是否没有锁(执行的最糟糕时间是什么?)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-29 13:04:16

对于thread::get_id()std::this_thread::get_id()是否是无锁的,甚至对于它们的复杂性,标准都没有给出任何保证。

恐怕您的问题的答案是特定于实现的,具体取决于您特定的标准库和底层线程库。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16814411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档