As far as I recall, each IDoc has its own IDoc number. This is one of the prerequisites so that segments belonging to separate IDocs can be separated (alongside several other values).
So yes, you can process more than one IDoc within the same mapping run, no problem at all.
In fact the IDoc Interpreter reads (and caches) all segments for each IDoc before processing them all at once; otherwise it could not identify whether an IDoc is complete.
After each IDoc is processed internally, the IDoc Interpreter will forward all segments for that IDoc in one batch.
Again, as far as I recall, it's been 7 years since I've touched IDocs myself for the last time.
May I dare to ask what exactly is the reason for your question? Just curiosity? Some difficult technical problem? Something else?