1 //异步函数 : 在一个方法执行时调用另一个方法.
2 //而被调用的方法或者其中的某些语句不是立刻执行,而是过一段时间后才执行。
3 //MonoBehaviour 提供了两种异步方法:
4 //调用 (Invoke)
5 //协程 ( Coroutine)
6
7 //延迟调用 Invoke
8 ///1. Invoke 在脚本的生命周期中被调用
9 ///2. Invoke 不能接受有参数的方法
10 ///3. Invoke受 ScaleTime 影响,所以ScaleTi 变慢,Invoke也会对应变慢,而在Time.ScaleTime = 0时候Invoke无效
11 ///4. Invoke 指定的方法可以多次被调用,之间不受影响
12 ///5.Invoke InvokeRepeating是用CancellInvoke 停止。
13 ///6.无论active 是true 或 false,无法停止Invoke,除非invoke所在的脚本所依附的游戏物体被销毁
14
15 //
16 Invoke("Test", 2f);
17
18 //每2s 后掉 Test方法, 重复3次
19 InvokeRepeating("Test", 2f, 3);
20 //是否Invoke 持有 Test 方法的调用
21 if (IsInvoking("Test"))
22 {
23 Debug.Log("Test方法等待调用");
24 }
1 //停止持有的Test的Invoke
2 CancelInvoke("Test");
3
4 CancelInvoke(); //停止所有的Invoke