Нет ничего, что вы можете сделать только из std::thread::id
.Это просто уникальное представление всех работающих в данный момент потоков.
Его основная цель - использовать его в качестве индексного типа для ассоциативных контейнеров, поэтому вы можете использовать его в качестве ключа в * 1004.* или std::unordered_map
, и затем используйте его для поиска объекта std::thread
.
Как только вы нашли объект std::thread
, вы можете получить его native_handle
, а затем использовать специфичные для ОС механизмы дляостановить поток.Например, в Posix это будет pthread_cancel
.