c ++ 11 має можливість отримати поточний ідентифікатор потоку, але його не можна передати цілочисельному типу:
cout<<std::this_thread::get_id()<<endl;
вихід: 139918771783456
cout<<(uint64_t)std::this_thread::get_id()<<endl;
помилка: недійсне приведення з типу 'std :: thread :: id' до типу 'uint64_t' те саме для інших типів: недійсне приведення з типу 'std :: thread :: id' до типу 'uint32_t'
Я дійсно не хочу робити кастинг покажчика, щоб отримати цілочисельний ідентифікатор потоку. Чи є якийсь розумний спосіб (стандартний, оскільки я хочу, щоб він був портативним), щоб це зробити?
operator<<
схоже, добре справляється).