el empadronador el compilador genera para usted está siendo iterado. Una vez.
El compilador generará una clase que implementa IEnumerator, que tiene una función MoveNext() y una propiedad Current. La clase tendrá todos los miembros necesarios para almacenar el estado de la función entre llamadas. Los detalles exactos se pueden considerar "Magia del compilador".
El objeto de esta clase generada será manejado y administrado por el Motor Unity3d. El motor Unity3d llamará a MoveNext() en cada corrutina activa una vez por cuadro (a menos que se indique lo contrario).
Esto permitió al programador Unity3d escribir scripts que se reproducen un cuadro a la vez. Una combinación de la magia del compilador de C# y la magia del motor de Unity3d da como resultado una secuencia de comandos muy poderosa pero fácil de usar.
Para responder a su pregunta: el código en su función se ejecutará una vez, pero se detendrá en la declaración 'yield return'.
Como se indicó anteriormente, el compilador de C# crea un objeto especial que implementa IEnumerator.
En la primera llamada a MoveNext(), su función crea una explosión y establece el objeto actual como "new WaitForSeconds (1.5f)".
El motor Unity3d inspecciona este objeto, ve que es una instancia de la clase especial "WaitForSeconds", por lo que pone el enumerador en una cola de espera y no solicitará el segundo elemento hasta que hayan transcurrido 1.5 segundos. Mientras tanto, se renderizarán muchos cuadros y se reproducirá la explosión.
Después de 1,5 segundos, Unity colocará el enumerador de la cola y llamará a MoveNext() nuevamente. La segunda parte de su función se ejecutará ahora, pero no generará un segundo objeto. MoveNext() devolverá false para indicar que no pudo obtener un nuevo elemento, que es la señal a Unity3d para descartar este enumerador. El recolector de basura recuperará la memoria en algún momento.
Como dije: está ocurriendo un montón de compiladores y magia Unity3d. Siempre que recuerde que su función se mantendrá en espera hasta el próximo cuadro en cada declaración de rendimiento, sabrá lo suficiente como para beneficiarse de esas funciones especiales.
El título de la pregunta podría ser más descriptivo. De alguna manera, Google aún recogió las palabras clave, sin embargo. – ftvs