IEnumerator loop;
IEnumerator loop1;
void Start()
{
loop = Loop(5, 1);
StartCoroutine(loop);
loop1 = Loop(10, 2);
StartCoroutine(loop1);
}
public void StopIE()
{
StopCoroutine(loop);
}
IEnumerator Loop(float num,float time)
{
for (int i = 0; i < num; i++)
{
DeBug.Log(i);
yield return new WaitForSeconds(time);
}
}
以上代码的输出就不贴了。因为执行是非常正常的
研究以后得到以下结论:
首先一个协程方法可以开启多个不同的协程,互不干扰。
其次,字段保存协程只能保存到此协程完成以前。协程完成后再执行 StopCoroutine是会报错:空物体引用。