Unity在協程內部停止協程自身后代碼執行問題


當在協程內部停止自身后,后面的代碼塊還會繼續執行,直到遇到yield語句才會終止。

經測試:停止協程,意味着就是停止yield,所以在停止協程后,yield之后的語句也就不會執行了。

代碼如下:

 1 using UnityEngine;
 2 using System.Collections;
 3 
 4 public class Test : MonoBehaviour {
 5 
 6     void Start () {
 7         StartCoroutine("Method");
 8     }
 9 
10     IEnumerator Method() {
11         StopCoroutine("Method");
12         Debug.Log("協程停止");
13         yield return 0;
14         Debug.Log("協程yield之后的代碼");
15     }
16 }

執行結果如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM