According to Apple's documentation:
This method queues the message on the run loop of the target thread using the default run loop modes—that is, the modes associated with the NSRunLoopCommonModes constant. As part of its normal run loop processing, the target thread dequeues the message (assuming it is running in one of the default run loop modes) and invokes the desired method.
A queue is typically an ordered data structure. The fact that it doesn't state that it could execute in any order implies that they will be executed in order.