Next up in the fabulous journey of scripting, we will cover the treacherous realm of background tasks. We use the background tasks to start something (in the background) so that it is runs independently of the normal game update and draw cycle.
Coroutines, by default, do not run the same thread as the normal game loop. If you are not careful, they can stop your game from running. (You can dispatch them on to separate threads in Unity Pro to offset the work in order to improve the performance.)
For more information on Coroutines and the default execution order of methods, refer to the article in the Unity docs at https://docs.unity3d.com/Documentation/Manual/ExecutionOrder.html.
The following diagram shows that ...