Lock threads to a particular core on creation, every core does a Round-robin over all threads. You're 50% there.
Have the core detect congestion, and move yeet threads to another random core when it's congested. You're 75% there.
Use three lists for priorities instead of one. You're 90% there.
Make up for the other 10% with sane design in other subsystems.