Don't share data between threads ;-P
My primary question is what's the fastest
What about on single-core or dual-core CPUs? Thread-pool systems (with a variable number of threads based on the CPU) that are executing a flow-based graph of tasks are generally very simple and efficient.
Basically, I am going to have 4 threads for loading content, one thread for input/output, one thread for rendering, and one thread for networking.