Ah, the classic "let me fix this with multithreading" trap. Nothing says "I'm about to ruin my own day" quite like thinking threads will simplify your code.
For the uninitiated: threading is like inviting 10 chefs to cook in your tiny kitchen simultaneously. Sure, in theory, dinner gets made faster. In practice, they're all fighting over the same knife, someone's pasta water is boiling over, and nobody remembers who put what in the oven.
The punchline isn't even complete, and that's the genius part. We all know it ends with "...and now the problems are racing each other." Race conditions: the gift that keeps on giving errors that can't be reproduced in the debugger.