StopAllCoroutines():
用于停止当前脚本的所有协程。
StopCoroutine(string methodName);
停止当前脚本中的某一个协程,通过协程的方法名查找并停止。
局限性:StartCoroutine("testStartCor")中不能带参数,也就是testStartCor不能有参数,否则会报错。
StopCoroutine(IEnumerator routine);
using UnityEngine;
using System.Collections;
/// <summary>
///测试 public void StopCoroutine(IEnumerator routine);
/// </summary>
public class TestHHH : MonoBehaviour
{
IEnumerator helloIenumeratro;
void Start()
{
//必须是——StopCoroutine(IEnumerator routine)方式
helloIenumeratro = testStartCor("今天的天气哈哈哈");
StartCoroutine(helloIenumeratro);
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
//对应——StopCoroutine(IEnumerator routine)方式
StopCoroutine(helloIenumeratro);
Debug.Log("已经停止协程");
}
}
IEnumerator testStartCor(string ss)
{
var cout = 0;
while (true)
{
yield return new WaitForSeconds(1);
cout++;
Debug.Log("StartCoroutine:" + cout+" "+ss);
}
}
}