У меня есть класс итератора, который циклы по массиву объектов и лениво загружают из базы данных, когда ей нужно к (когда она не загружается в память). Проблема, это выполняет итерации приблизительно 200 000 раз, и я нашел из здесь: http://www.garfieldtech.com/blog/magic-benchmarks, что интерфейс итератора является невероятно медленным.
Кто-либо знал бы о хорошем пути к ленивой загрузке, не используя интерфейс итератора?
Для петли можно использовать обычную старую .
Интерфейс итератора может быть медленным, но при выполнении 200.000 запросов к БД шансы на то, что ваше узкое место - не итератор. Я бы посоветовал профилировать ваш код, чтобы понять, действительно ли он нуждается в оптимизации на этой позиции.
Преждевременная оптимизация - это корень всего зла :)
. Лучшим решением было использование для
цикла и класса Singleton с индексами и итерационными методами.