unity 代码运行时间 和 反射的使用
来源:互联网 发布:美萍医药软件 编辑:程序博客网 时间:2024/06/07 19:46
https://msdn.microsoft.com/zh-cn/library/vstudio/system.diagnostics.stopwatch(v=vs.100).aspx
using UnityEngine;using System.Collections;using System.Reflection;using System;public class ReflTestDemo : MonoBehaviour {// Use this for initializationvoid Start () {int start = System.Environment.TickCount; fun ();int end = System.Environment.TickCount; Debug.Log("strat - end :" + (end - start));//单位毫秒/* Stopwatch 实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间。 在典型的 Stopwatch 方案中,先调用 Start 方法,然后调用 Stop 方法,最后使用 Elapsed 属性检查运行时间。Stopwatch 实例或者在运行,或者已停止;使用 IsRunning 可以确定 Stopwatch 的当前状态。使用 Start 可以开始测量运行时间;使用 Stop 可以停止测量运行时间。通过属性 Elapsed、ElapsedMilliseconds 或 ElapsedTicks 查询运行时间值。 当实例正在运行或已停止时,可以查询运行时间属性。运行时间属性在 Stopwatch 运行期间稳固递增;在该实例停止时保持不变。默认情况下,Stopwatch 实例的运行时间值相当于所有测量的时间间隔的总和。每次调用 Start 时开始累计运行时间计数;每次调用 Stop 时结束当前时间间隔测量,并冻结累计运行时间值。使用 Reset 方法可以清除现有 Stopwatch 实例中的累计运行时间。 */System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();stopwatch.Start(); // 开始监视代码运行时间fun ();stopwatch.Stop(); // 停止监视/*Days获取当前 TimeSpan 结构所表示的时间间隔的天数部分。Hours获取当前 TimeSpan 结构所表示的时间间隔的小时数部分。Milliseconds获取当前 TimeSpan 结构所表示的时间间隔的毫秒数部分。Minutes获取当前 TimeSpan 结构所表示的时间间隔的分钟数部分。Seconds获取当前 TimeSpan 结构所表示的时间间隔的秒数部分。Ticks获取表示当前 TimeSpan 结构的值的刻度数。TotalDays获取以整天数和天的小数部分表示的当前 TimeSpan 结构的值。TotalHours获取以整小时数和小时的小数部分表示的当前 TimeSpan 结构的值。TotalMilliseconds获取以整毫秒数和毫秒的小数部分表示的当前 TimeSpan 结构的值。TotalMinutes获取以整分钟数和分钟的小数部分表示的当前 TimeSpan 结构的值。TotalSeconds获取以整秒数和秒的小数部分表示的当前 TimeSpan 结构的值。 */System.TimeSpan timespan = stopwatch.Elapsed;double hours = timespan.TotalHours; // 总小时double minutes = timespan.TotalMinutes; // 总分钟double seconds = timespan.TotalSeconds; // 总秒数double milliseconds = timespan.TotalMilliseconds; // 总毫秒数//打印代码执行时间Debug.Log("hours " + hours);Debug.Log("minutes " + minutes);Debug.Log("seconds " + seconds);Debug.Log("milliseconds " + milliseconds);}// Update is called once per framevoid Update () {}void fun(){string strText = "zhaoguanghui"; BindingFlags flags = (BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static | BindingFlags.Instance | BindingFlags.DeclaredOnly); Type t = typeof(ReflTest1);MethodInfo[] mi = t.GetMethods(flags); System.Object obj = Activator.CreateInstance(t); foreach (MethodInfo m in mi) { if (m.Name.StartsWith("Write")){ m.Invoke(obj, new object[] { strText }); } } MethodInfo mMy = t.GetMethod("MyWrite"); if (mMy != null) { mMy.Invoke(obj, new object[] { strText }); } }void fun2(){// Define two dates.DateTime date1 = new DateTime(2010, 1, 1, 8, 0, 15);DateTime date2 = new DateTime(2010, 8, 18, 13, 30, 30);TimeSpan interval = date2 - date1;Console.WriteLine("{0} - {1} = {2}", date2, date1, interval.ToString());Console.WriteLine(" {0,-35} {1,20}", "Value of Days Component:", interval.Days);Console.WriteLine(" {0,-35} {1,20}", "Total Number of Days:", interval.TotalDays);Console.WriteLine(" {0,-35} {1,20}", "Value of Hours Component:", interval.Hours);Console.WriteLine(" {0,-35} {1,20}", "Total Number of Hours:", interval.TotalHours);Console.WriteLine(" {0,-35} {1,20}", "Value of Minutes Component:", interval.Minutes);Console.WriteLine(" {0,-35} {1,20}", "Total Number of Minutes:", interval.TotalMinutes);Console.WriteLine(" {0,-35} {1,20:N0}", "Value of Seconds Component:", interval.Seconds);Console.WriteLine(" {0,-35} {1,20:N0}", "Total Number of Seconds:", interval.TotalSeconds);Console.WriteLine(" {0,-35} {1,20:N0}", "Value of Milliseconds Component:", interval.Milliseconds);Console.WriteLine(" {0,-35} {1,20:N0}", "Total Number of Milliseconds:", interval.TotalMilliseconds);Console.WriteLine(" {0,-35} {1,20:N0}", "Ticks:", interval.Ticks);//the example displays the following output:// 8/18/2010 1:30:30 PM - 1/1/2010 8:00:15 AM = 229.05:30:15// Value of Days Component: 229// Total Number of Days: 229.229340277778// Value of Hours Component: 5// Total Number of Hours: 5501.50416666667// Value of Minutes Component: 30// Total Number of Minutes: 330090.25// Value of Seconds Component: 15// Total Number of Seconds: 19,805,415// Value of Milliseconds Component: 0// Total Number of Milliseconds: 19,805,415,000// Ticks: 198,054,150,000,000}}
0 0
- unity 代码运行时间 和 反射的使用
- 关于代码运行时间Stopwatch的使用
- unity中反射的使用
- 使用console进行性能测试和计算代码运行时间
- Unity 时间的具体使用
- 计算代码的运行时间
- 测试代码的运行时间
- 求代码的运行时间
- 测试代码运行时间的代码
- 动态代码的使用(反射和动态生成类)
- 动态代码的使用(反射和动态生成类)
- 动态代码的使用(反射和动态生成类)
- 动态代码的使用(反射和动态生成类)
- 动态代码的使用(反射和动态生成类)
- 使用 Stopwatch 精确测试代码运行时间
- 使用Stopwatch类计算代码运行时间
- js 使用console计算代码运行时间
- Unity中Navigation组件的使用代码范例和注意事项
- Java Web开发3___Servlet与JSP的区别
- JavaScript历史简介
- Find Minimum in Rotated Sorted Array II
- CoreData
- OC-委托模式
- unity 代码运行时间 和 反射的使用
- How do you make Ubuntu accept files sent over bluetooth
- ubuntu升级内核后vmware-player启动失败
- JavaScript高级程序设计之函数表达式之私有变量之增强的模块模式第7.4.3讲笔记
- 动力效果之重力特效
- iOS开发之 UIDynamic (动力效果)
- 动力效果之碰撞特效
- 《构建之法》第十六章 IT行业的创新
- 黑马程序员-----java面向对象