Experimenting with multithreaded code when you’re not sure what you’re doing can be risky. Thanks to race conditions and such, your code might appear to work fine one time and then seemingly randomly crash another time, without you having done anything noticeably different. It’s also really hard to debug multithreaded code, I think. I stay away from multithreading because I don’t know what I’m doing with it. As far as spinning up a bunch of threads on a weaker computer, no, it won’t explode. The worst that could happen to the computer would be 100% CPU usage, and that would just mean the computer would become sluggish.
Was that sarcasm? =P A cursory glance over your code makes it hard to believe you don’t know what bytes are.