跨进程的std :: thread :: id是否是唯一的?
从我的经验看,这似乎是结果
std::this_thread::get_id()
在整个流程中是独一无二的:每个流程的id不同。
这是由标准保证的吗?
在支持pthread的环境中,std :: thread在pthread上实现。 所以它成为没有(便携式)保证。
从pthread_self手册:
线程ID保证只在一个进程内唯一。 一个
线程ID可能会在终止的线程连接后重新使用,或者分离的线程已终止。
线程ID的标准受让人在不同的线程中是唯一的,它也表示终止的线程ID可能会被重用。 它没有指定进程,也没有确认它们的存在,因此,它不能保证跨进程的唯一性。
30.3.1.1
该标准还隐藏了thread :: id的实现,它可能是一个int或其他东西。
链接地址: http://www.djcxy.com/p/29455.html上一篇: Is std::thread::id unique across processes?
下一篇: Enum disassembled with javap doesn't show constructor arguments