Что жаждет загрузки?

FWIW, если вы не создаете настраиваемое исключение из соображений взаимодействия, вы можете захотеть вместо этого использовать clojure.contrib.condition. Он поставляется с предварительно скомпилированным пользовательским исключением, что вы копируете пользовательские данные на использование его API. Я смог избежать создания множества пользовательских исключений, используя вместо этого. Документы находятся здесь: http://clojure.github.com/clojure-contrib/condition-api.html

147
задан Quamis 30 April 2012 в 08:07
поделиться

3 ответа

Есть три уровня:

  1. Активная загрузка: вы делаете все, когда вас попросят. Классический пример - умножение двух матриц. Вы делаете все расчеты. Это жадная загрузка;
  2. Ленивая загрузка: вы выполняете вычисления только при необходимости. В предыдущем примере вы не выполняете никаких вычислений, пока не получите доступ к элементу матрицы результатов; и
  3. Чрезмерная загрузка: здесь вы пытаетесь предугадать, что пользователь попросит, и предварительно загрузите его.

Я надеюсь, что это имеет смысл в контексте, в котором вы это видите.

Позвольте я приведу вам пример "Webby".

Представьте себе страницу с изображениями, которые наведены на них, например, для пунктов меню или навигации. Есть три способа загрузки изображений на этой странице:

  1. Загружать каждое отдельное изображение, необходимое перед визуализацией страницы ( нетерпеливо );
  2. Загружать только отображаемые изображения при загрузке страницы и загружать остальные, если / когда они требуются ( ленивый ); и
  3. Загружать только отображаемые изображения при загрузке страницы. После загрузки страницы предварительно загрузите другие изображения в фоновом режиме на случай, если они вам понадобятся ( слишком много ).

Имеет смысл?

362
ответ дан 23 November 2019 в 21:59
поделиться

Это противоположность отложенной загрузки , при которой инициализация объекта откладывается до тех пор, пока объект не понадобится. Активная загрузка инициализирует объект при создании.

22
ответ дан 23 November 2019 в 21:59
поделиться

Если вы представите, что у вас есть объект, называемый человеком, у которого есть имя, дата рождения и количество менее важных деталей, скажем, любимый цвет, любимая телепрограмма.

Для ленивой загрузки этого класс, который вы бы инициализировали, читая, возможно, из базы данных все основные наиболее часто используемые детали (например, имя и дату рождения) и читайте только менее используемые детали, когда / если они необходимы, активная загрузка противоположна, то есть вы загружаете во всех деталях одновременно.

Преимущества отложенной загрузки часто называют эффективностью, однако, если объекты не такие сложные или эффективность не вызывает беспокойства, можно использовать ускоренную загрузку

10
ответ дан 23 November 2019 в 21:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: