void Start()
{
Print = Prints();
}
private IEnumerator Print;
void Update()
{
if (Input.GetKeyDown(KeyCode.S))
{
StartCoroutine(Print);
}
if (Input.GetKeyDown(KeyCode.T))
{
StopCoroutine(Print);
}
}
private IEnumerator Prints()
{
for (int i = 0; i < 1000; i++)
{
yield return null;
Debug.LogError(i);
}
}
1、unity端:协程可后台运行
2、Android:切后台挂起,切前台继续执行
3、Android:UnityWebRequest 进行的网络请求,本地下载拷贝等,后台继续执行,不会挂起
4、同一协程(指通过一个变量来控制),暂停后再开启继续执行()协程执行完毕,再开启无效
5、不采用统一变量,暂停后开启,逻辑重头执行(新开了一个协程)