At 1000 rpm or 16.7 rps and 400 pulses per rev that gives 6680 pulses per second or 149 µsecs between pulses.
In that time the Arduino would have to respond to any other pulses that are created by the other encoders and do something useful with the data.
If the quantity of pulses per second is low enough for the Arduino to keep up it will give the impression of doing everything simultaneously as long as the required output is slow enough. In other words if it must produce an output for every pulse it won’t be simultaneous. But if (for example) it only needs to produce an output every 1000 pulses it should appear simultaneous. (And 1000 is just a number for illustration - it has no significance).
The key to high speeds is minimizing the amount of calculating the Arduino needs to do.
I can’t see the system being any value to you if it misses pulses.
I guess one possibility would be use a separate Arduino with each encoder - but I would see that as a last resort because it brings other complications.