首页 > 编程语言 > 详细

unity,下面两个协程不等价

时间:2016-05-29 14:52:18      阅读:118      评论:0      收藏:0      [点我收藏+]

//代码1

IEnumerator A(){

  Debug.Log(“hi1”);

  {
    yield return new WaitForSeconds(1f);
    Debug.Log(“hi2”);
  }

  Debug.Log(“hi3”);

}

//代码2

IEnumerator A(){

  Debug.Log(“hi1”);

  yield return StartCoroutine (B());

  Debug.Log(“hi3”);

}

IEnumerator B(){
  yield return new WaitForSeconds(1f);
  Debug.Log(“hi2”);

}

代码1和代码2的打印顺序相同,都是hi1 hi2 hi3

但两者并不等价,体现在:

如果我调用StopCoroutine("A"),代码1会全部中止;而代码2只有A被停掉,B不会被停掉。

unity,下面两个协程不等价

原文:http://www.cnblogs.com/wantnon/p/5539330.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!