版本:Unity 6 (6000.0)
语言英语
  • C#

MonoBehaviour.StopAllCoroutines

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实阅读了用户提出的每个建议的更改,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

声明

public void StopAllCoroutines();

描述

停止此行为上运行的所有协程。

一个 MonoBehaviour 可以执行零个或多个协程。创建的协程可以执行一段时间。在下面的脚本示例中,创建并运行了两个协程而没有停止。但是,StopAllCoroutines 用于停止这两个协程。此操作可以在运行多个协程的脚本上进行。不需要参数,因为脚本上的所有协程都将停止。
注意:StopAllCoroutines 仅对附加到的一个脚本起作用。

using UnityEngine;
using System.Collections;

// Create two coroutines that run at different speeds. // When the space key is pressed stop both of them.

public class ExampleClass : MonoBehaviour { //coroutine 1 IEnumerator DoSomething1() { while (true) { print("DoSomething1"); yield return new WaitForSeconds(1.0f); } }

//coroutine 2 IEnumerator DoSomething2() { while (true) { print("DoSomething2"); yield return new WaitForSeconds(1.5f); } }

void Start() { StartCoroutine("DoSomething1"); StartCoroutine("DoSomething2"); }

void Update() { if (Input.GetKeyDown("space")) { StopAllCoroutines(); print("Stopped all Coroutines: " + Time.time); } } }