Multithreading is a last ditch effort since you can only get your speedup from it once and it will add a whole new level of hard bugs and will dramatically complicate everything forever. For something like df it is much better to work on smarter code first.