The ReceiveText(-1 bytes) is meant to work with a BlueTooth Client Delimiter attribute set to 10 (newline).
It grabs just the incoming bytes up to the next newline, and leaves the rest in the buffer for the next receiveText attempt.
AI2 is single threaded, so the next Clock Timer won't fire until this event completes.
For more discussion of the execution model, see