gpt4 book ai didi

c# - Unity3D 中的 Time.time vs DateTime.UtcNow.Millisecond 性能?

转载 作者:太空狗 更新时间:2023-10-30 01:30:50 25 4
gpt4 key购买 nike

在使用 Unity 构建的多人游戏中,我需要经常跟踪时间,以便了解数据包何时进入。在 Unity、Time.time 或 DateTime.UtcNow.Millisecond 中哪个性能更好?性能差异有多大?

最佳答案

最好自己测试一下。您是最了解您的应用程序并且可以说出在特定条件下什么是最佳解决方案的人。这是您可以使用的一些简单测试脚本。它只是使用 unity/c# 方法保存当前时间戳,并记录该操作所需的时间。

public class TimeTest : MonoBehaviour
{
public bool UseUnityFuntion;

private string msg;

void Update ()
{
var stopwatch = Stopwatch.StartNew();
msg = UseUnityFuntion
? Time.time.ToString()
: DateTime.UtcNow.Millisecond.ToString();
stopwatch.Stop();
UnityEngine.Debug.Log(stopwatch.ElapsedTicks);
}

void OnGUI()
{
if (msg != null) GUILayout.Label(msg);
}
}

和大多数情况一样,这次非 unity 函数似乎更快。至少在我的电脑上。不知道你的应用程序如何工作,但请记住,使用毫秒值时可能会发生冲突。使用 Time.time 也有一个缺点——您只能在主线程中执行此操作。当您有网络应用程序时,您很可能希望在后台线程上保存时间戳。

关于c# - Unity3D 中的 Time.time vs DateTime.UtcNow.Millisecond 性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42755359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com