System.Diagnostics.Stopwatch类:提供一组方法和属性,可用于准确地测量运行时间,通常用来测试代码在时间上的执行效率。
?
方式1
Stopwatch sw=new Stopwatch();
sw.Start();开启计时器。
sw.Stop();关闭计时器。
sw.Reset();? 重置计时器。
方式2 :在Profiler窗口定位到那一帧
Profiler.BeginSample( "TestMethod" ); ? ? ? ? ?TestMethod(); ? ? ? ? ?Profiler.EndSample();
?
using UnityEngine;
using System.Collections;
using System.Diagnostics;
using UnityEngine.Profiling;
public class NewBehaviourScript : MonoBehaviour
{
void Start()
{
float t = Time.time;
TestMethod();
UnityEngine.Debug.Log( string .Format( "total: {0} ms" , Time.time - t));
Stopwatch sw = new Stopwatch();
sw.Start();//开启计时器。
TestMethod();
sw.Stop();//关闭计时器。
UnityEngine.Debug.Log( string .Format( "total: {0} ms" , sw.ElapsedMilliseconds));
sw.Reset(); //重置计时器。
sw.Start();
TestMethod();
sw.Stop();
UnityEngine.Debug.Log( string .Format( "total: {0} ms" , sw.ElapsedMilliseconds));
//在Profiler窗口定位到那一帧
Profiler.BeginSample( "TestMethod" );
TestMethod();
Profiler.EndSample();
}
void TestMethod()
{
for ( int i = 0; i < 10000000; i++)
{
}
}
}
|