unity 代码运行时间 和 反射的使用System.Environment.TickCount

 
 
https://msdn.microsoft.com/zh-cn/library/vstudio/system.diagnostics.stopwatch(v=vs.100).aspx
 
 
 
 
 
 
 
 
 
 
使用UnityEngine;
使用System.Collections;
使用System.Reflection;
使用系统;公共类ReflTestDemo:MonoBehaviour { //用于初始化
 void start(){ int start = System.Environment.TickCount; 
好玩();
int end = System.Environment.TickCount; 
Debug.Log(“ strat-end:” +(end-start)); //单位毫秒/ *
     Stopwatch实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间。
     在典型的Stopwatch方案中,先调用Start方法,然后调用Stop方法,最后使用经过的属性检查运行时间。Stopwatch
 实例或者在运行,或者已停止;使用IsRunning可以确定Stopwatch的当前状态。
 使用Start可以开始测量运行时间;使用Stop可以停止测量运行时间。
 通过属性Elapsed,ElapsedMilliseconds或ElapsedTicks查询运行时间值。 
 当实例正在运行或已停止时,可以查询运行时间属性。




		

								
		

																					运行时间属性在Stopwatch运行期间稳固增量;在该实例停止时保持不变。
 			有时情况下,Stopwatch实例的运行时间值对应于所有测量的时间间隔的
 			总和。* /
 System.Diagnostics.Stopwatch 			stopwatch
 = new System.Diagnostics.Stopwatch()每次调用Stop时结束当前时间间隔测量,并冻结并运行时间值。
 ;
stopwatch.Start(); //开始监视代码运行时间
 fun();
stopwatch.Stop(); //停止监视/ *
 天获取当前时间跨度结构所表示的时间间隔的天数部分。
 时间获取当前时间跨度结构所表示的时间间隔的小时数部分。
 毫秒获取当前时间跨度结构所表示的时间间隔的毫秒数部分。
 纪要。获取当前时间跨度结构所表示的时间间隔的分钟
数部分秒钟获取当前时间跨度结构所表示的时间间隔的秒数部分。
 蜱获取表示当前时间跨度结构的值的刻度数。
						
						



																													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 frame
	void 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
		//毫秒总数:19,805,415,000
 		//滴答声:198,054,150,000,000
 	}
 }
转载于[地址](https://blog.csdn.net/zhaoguanghui2012/article/details/48846051)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>