<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                本文章由cartzhang編寫,轉載請注明出處。 所有權利保留。? 文章鏈接:?[http://blog.csdn.net/cartzhang/article/details/50686627](http://blog.csdn.net/cartzhang/article/details/50686627)? 作者:cartzhang 網上直接搜的代碼。需要的使用也簡單,所以就不過多說明。? 但是網上都說,他們之間的差距,delegate比較快,效果高。怎么個高法呢?還是自己來測試下時間。? 故此,? 個人之用來比較下時間差別。 ### 一、直接代碼 ~~~ using UnityEngine; using System.Collections; /// <summary> /// Delegate basic. /// just test Delegate && SendMessage .. /// /// By Chiuan 2012.8 /// </summary> public class DelegateBasic : MonoBehaviour { static int loopNumber = 5000000; //define my delegate statement. public delegate void MyDelegate(string arg1); //create my delegate object public MyDelegate myDelegate; //need some values to debug time spent. bool isStart; float timeStart; int count; bool isStartSendMessage; // Use this for initialization void Start() { myDelegate += myFunciton1; //myDelegate += myFunciton2; } // Update is called once per frame void Update() { if (isStart) { isStart = false; count = 0; timeStart = Time.realtimeSinceStartup; Debug.Log("Start = " + timeStart); for (int i = 0; i < loopNumber; i++) { if (myDelegate != null) myDelegate(""); } } if (isStartSendMessage) { isStartSendMessage = false; count = 0; timeStart = Time.realtimeSinceStartup; Debug.Log("Start = " + timeStart); for (int i = 0; i < loopNumber; i++) { this.gameObject.SendMessage("myFunciton1", "", SendMessageOptions.DontRequireReceiver); } } } void OnGUI() { if (GUILayout.Button("INVOKE Delegate")) { isStart = true; } if (GUILayout.Button("SendMessage")) { isStartSendMessage = true; } } void myFunciton1(string s) { count++; if (count == loopNumber) { Debug.Log("End = " + Time.realtimeSinceStartup); Debug.Log("Time Spent = " + (Time.realtimeSinceStartup - timeStart)); } } } ~~~ ### 二、說明 代碼基本沒有做更改,刪掉了沒用的函數。也名字也帶著呢!!在此表示感謝!!! 但說道具體測試,要每次都需要重新開始,才能計時。要不就會有問題,后測試的就會產生多次循環。 ### 三、效率比較 系統配置:”Win7 64位,i7處理器 16G內存,英偉達660顯卡” ![](https://box.kancloud.cn/2016-03-09_56dfda8869afc.jpg) 對比為倍數關系!!也就說,隨著次數增加,效率差距越來越大!!! ### 相關鏈接: [https://unity3d.com/cn/learn/tutorials/modules/intermediate/scripting/delegates](https://unity3d.com/cn/learn/tutorials/modules/intermediate/scripting/delegates) [http://www.xuanyusong.com/archives/1895/](http://www.xuanyusong.com/archives/1895/) [http://blog.csdn.net/chiuan/article/details/7918833](http://blog.csdn.net/chiuan/article/details/7918833) 若有問題,請隨時聯系!!!? 再次表示感謝!!!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看