Unity3D 基础——Coroutine 协同程序

Coroutine 称为协同程序或者协程,协同程序可以和主程序并行运行,和多线程有些类似。协同程序可以用来实现让一段程序等待一段时间后继续运行的效果。例如,执行步骤1,等待3秒;执行步骤2,等待某个条件为 true;执行步骤3......

在Unity3D 中,使 MonoBehaviour.StartCoroutine 方法即可开启一个协同程序,也就是说该方法必须在 MonoBehaviour 类或继承于 MonoBehaviour 的类中调用。

MonoBehaviour-StartCoroutine - Unity 脚本 APIicon-default.png?t=N7T8https://docs.unity.cn/cn/current/ScriptReference/MonoBehaviour.StartCoroutine.html

使用协同程序

在 C# 中,协同函数的返回类型必须为 IEnumerator。

1.新建脚本 CoroutineExample,代码如下

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CoroutineExample : MonoBehaviour
{
    IEnumerator Start()
    {
        Debug.Log("Start: " + Time.time);
        yield return StartCoroutine(WaitAndDebug());
        Debug.Log("Done: " + Time.time);
    }

    IEnumerator WaitAndDebug()
    {
        yield return new WaitForSeconds(5);
        Debug.Log("WaitAndDebug: " + Time.time);
    }

2.运行结果

(可以随便把脚本绑在个物体上)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值