至今为止实现的功能都是单线程的,这样的程序不仅没有发挥当代CPU的性能,并且还使得游戏功能受到了很大的限制。
Unity的协程提供了一个伪多线程,只需要将返回值改为IEnumerator即可。
常见的Unity协程函数包括StartCoroutine()方法和WaitForSeconds()、WaitForFixedUpdate()方法,可以实现类似和update一样的内容或者延迟实行某函数。
C#的事件一般是指条件满足时触发的一系列机制。其主要有两个常用的类型:Action以及Func。当一个Action和Func执行时,它包括的所有函数会一起执行。注意,这是类型名,可以定义类型变量并且用它来存放函数。 可以将其看作函数表。Action存放的函数必须是没有返回值的,但是可以有参数。定义方法为:Action<typename> FuncName。调用Action时,Action的参数会传入所有需要该类型参数的函数。
Func和Action唯一的区别在于Action一般存放void函数,而Func存放有返回值的函数。