Хотя CLR порождает поток ОС для каждого управляемого потока, это не обязательно. Я имею в виду, что ни один стандарт не гарантирует, что между потоками ОС и управляемыми потоками должно быть однозначное соответствие
Цитировать MSDN:
ThreadId операционной системы не имеет
фиксированная связь с управляемым
поток, потому что неуправляемый хост может
контролировать отношения между
управляемые и неуправляемые темы.
В частности, сложный хост может
использовать API хостинга CLR для планирования
много управляемых потоков против одного и того же
поток операционной системы, или переместить
управляемая нить между разными
потоки операционной системы.