When two co-routines are running, how do you stop the first co-routine?
GLOBALS.stableTime = 5;
IEnumerator StableWaittingTime ()
{
yield return new
There are three ways to stop coroutines.
StopAllCoroutines()
, which will obviously stop all running coroutines.StopCoroutine(coroutine)
, where coroutine
is a variable name given to your IEnumerator
.yield break
from within the coroutine.Worth noting is that both StopAllCoroutines and StopCoroutine can only stop a coroutine when the coroutine reaches a yield return *
.
So if you have two coroutines with the same name and you want to stop the one you are executing in you do yield break
.
Interestingly, if you want to stop every other coroutine besides the one you are executing in, you call StopCoroutines()
from within that coroutine.