Мне трудно понять разницу между пользовательскими потоками и потоками ядра.
Что я понял до сих пор (поправьте меня, если я ошибаюсь, и мы обсуждаем все в контексте Linux) -
Нет ничего лучше пользовательской ветки; представление о том, что пользовательский поток создается в пользовательском пространстве и сопоставляется с потоком уровня ядра для выполнения, в значительной степени устарело.
Под потоком ядра я подразумеваю поток, который запланирован ядром, а поток, который я создаю в своей программе с помощью std::thread ( func, аргументы ), является потоком ядра в указанном выше смысле, и ему не нужно сопоставляться с кем-либо, чтобы его запланировали и выполнили. .
Подробнее здесь: https://stackoverflow.com/questions/793 ... nel-thread