1.协程的基本:
- 协程始终运行在主线程上,也就是说和主线程占用同一个CPU核心。如果需要并行执行任务,可以使用C#的
Task
或Thread
来启动后台线程。
2.协程的代码定义:参数可以自己加
//定义协程引用,可以用来控制协程
Coroutine Coroutine_1;
//协程实现
IEnumerator Coroutine_Add()
{
while (true)
{
//等待10秒
yield return new WaitForSeconds(10f);
//终止协程
yield break;
//等待下一帧
return null;
}
}
//启动协程
Coroutine_1 = StartCoroutine(Coroutine_Add());
//停止协程
StopCoroutine(Coroutine_1);
3.协程的引用
Coroutine_1 = StartCoroutine(Coroutine_Add());
特别的:
1.启动协程后,协程返回自身引用至Coroutine_1。当协程执行完毕后,Coroutine_1不为null,即使使用StopCoroutine(Coroutine_1),Coroutine_1也不为null,除非手动设置。
2.让协程引用等于null或让其指向其他协程,不会影响该协程的运行,除非显示的调用StopCoroutine。