Read the recipient list documentation for a lot more detail. By default it processes messages synchronously. You can use the parallel processing feature of the recipient list to run this concurrently. You can also define your own thread pools.
Go read the documentation it is in there.