发布时间:2023-04-12 14:30
协程:协同程序 在主线程程序中 开启一个子程序 协同主程序
异步执行,类似多线程, 本质不是多线程
使用:
1、定义协同程序函数
协同程序函数
A.返回值类型为IEnumerator
B.函数体内必须有yield return语句
yield return语句---类似红绿灯 就是等待效果 (不同于return结束函数执行)
yield return null -->等待一帧时间 向下执行
yield return new WaitForSeconds(s);--> 等待s秒后 向下执行
yield return StartCoroutine("协同程序");-->等待一个协同程序执行完毕
yield return new WWW(url);-->等待一个网络下载任务执行完后 向下执行
yield return new FixedUpdate(); -->等待固定更新函数执行完后 向下执行
2.开启协程
StartCoroutine("Time");
StartCoroutine(协程函数名(参数表));
3.关闭协程
//StopCoroutine(协程);//关闭指定协程
StopAllCoroutines();//关闭所有协程