Does the CPU interrupt threads running happily on cores even when there are no other threads which want to run or which have affinity that would allow them to run on that core?
But creating more threads will cause each to run slower as their caches are ruined by each context switch aren't they?