Обновление Tvalue в словаре производительности
Я просто что-то проектировал и задавался вопросом, была ли это плохая практика программирования в конце концов.
Если бы у меня был словарь, а Tvalue обновлялся в режиме реального времени (здесь я хотел сказать каждый кадр или каждый физический кадр), был бы я ужасно ошибаться?
Этот "дизайн" должен, в конце концов, отсортировать один GameObject из индекса Dictionary, в то время как Tvalue является фактором сравнения для Tkeys, по которым нужно отсортировать. Я делал это со списком, но словарь казался более рациональным выбором, если я все-таки хотел соединить другое значение для их сравнения.
1 ответ
Согласно документации MSDN производительность словаря для извлечения значения близка к O (1), что означает, что время извлечения элемента не зависит от размера (количества хранимых элементов) словаря.
Получение значения с использованием его ключа выполняется очень быстро, близко к O(1), поскольку класс Dictionary реализован в виде хеш-таблицы.
Я не знаю деталей вашего проекта, но я думаю, что вы можете обновлять TValue в каждом кадре без особых потерь производительности.