Что вызывает полумиллисекундные задержки в выполнении кода Unity?C#

Место общения программистов C#
Anonymous
Что вызывает полумиллисекундные задержки в выполнении кода Unity?

Сообщение Anonymous »

Я пытаюсь сделать шахматный бот просто для развлечения, но производительность - большая проблема. Немного отлаживая, я выяснил, что в выполнении кода существует случайная задержка 0,5 мс, даже если код не работает вообще. Я сделал тестовый проект, чтобы быть уверенным, и он выглядел следующим образом: < /p>
Вывод в тестовом проекте < /p>
Этот сценарий игры прикреплен к объекту «Gamemanager» и является единственным сценарием, работающим в тестовом проекте: < /p>
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Game : MonoBehaviour
{
DateTime _lastDateTimeCheck;
// Update is called once per frame
void Update()
{
_lastDateTimeCheck = DateTime.Now;

//Random code

PrintTimeSinceLastCheck();
}

void PrintTimeSinceLastCheck()
{
DateTime now = DateTime.Now;
TimeSpan timeSinceLastCheck = now - _lastDateTimeCheck;
if(timeSinceLastCheck.TotalMilliseconds > 0)
{
Debug.Log(timeSinceLastCheck.TotalMilliseconds + " ms");
}
}
}

< /code>
Unity запускает что -то в фоновом режиме? Может быть, что мне не нужно для шахматной игры? Мне просто любопытно, потому что время от времени сохранение половины миллисекунды может значительно улучшить производительность, особенно если шахматный бот нуждается в функции, которую можно назвать 500 000 раз, прежде чем сделать ход. 2022.3.42F1 и 2019.4.36f1. Я получаю одинаковые результаты во всех из них.

Подробнее здесь: https://stackoverflow.com/questions/797 ... -execution

Вернуться в «C#»