Я проходил новую поддержку многопоточности, которая присутствует в C++ 0x (C++ 11).поведение идентификатора потока в C++ 11
Таким образом, существует уникальный идентификатор типа std :: thread: id для каждого потока.
Рассмотрим следующий пример программы:
void hello_world()
{
std::cout<<"hello_world \n";
}
int main()
{
std::cout<<"Main thread id is "<<std::this_thread::get_id()<<"\n";
std::thread t(hello_world);
std::cout<<"Child thread id is ";
std::cout<<t.get_id()<<"\n";
t.join();
}
я получил пример вывода следующим образом:
Основная нить идентификатор 140502917359424
Дочерний поток идентификатор 140502900623104
hello_world
Идентификатор потока основного поток из моего выходного примера больше, чем у дочернего потока.
Являются ли идентификаторы потоков полностью независимыми от времени их запуска?
Если нет: существует ли способ отличить, был ли поток T1 начат раньше, чем поток T2 только из идентификатора потока?