Браузер не может только использовать свой кэш от предшествующих вызовов ajax?

Редко, в действительности, чтобы Вы хотели бы использовать массив. Определенно используйте List любое время, Вы хотите добавить/удалить, что данные, начиная с изменения размеров массивов являются дорогими. Если Вы знаете, что данные являются фиксированной длиной, и Вы хотите микрооптимизировать для [приблизительно 1 127] очень конкретных причина (после сравнительного тестирования), то массив может быть полезным.

List предложения партия [еще 1115] функциональность, чем массив (хотя LINQ выравнивает его немного), и почти всегда правильный выбор. За исключением params аргументы, конечно.;-p

Как счетчик - List одномерен; тогда как Вы имеете, имеют прямоугольный (и т.д.) выстраивает как int[,] или string[,,] - но существуют другие способы смоделировать такие данные (если Вам нужно) в объектной модели.

См. также:

Однако я делаю партия из использования массивов в моем protobuf-сеть проект; полностью для производительности:

  • это делает большое смещение бита, таким образом, byte[] в значительной степени важно для кодирования;
  • я использую локальную прокрутку byte[] буфер, который я заполняю прежде, чем отправить вниз к базовому потоку (и v.v.); более быстрый, чем BufferedStream и т.д.;
  • это внутренне использует основанную на массиве модель объектов (Foo[], а не List), так как размер фиксируется когда-то созданный и должен быть очень быстрым.

, Но это - определенно исключение; для общей обработки направления деятельности, List победы каждый раз.

10
задан ericslaw 7 August 2009 в 05:05
поделиться

4 ответа

Кэширование Ajax возможно и предсказуемо (по крайней мере, в IE и Firefox).

В этом сообщении блога обсуждается кэширование Ajax и есть демонстрационная веб-страница:

http: // blog. http://stevesouders.com/tests/ajax_caching, http://stevesouders.com/tests/ajax_caching. .php

13
ответ дан 3 December 2019 в 22:38
поделиться

Короткий ответ - нет. К сожалению, браузеры не кэшируют запросы AJAX так же надежно, как «обычные» страницы. (Хотя на самом деле данные могут быть кешированными, браузер часто не использует кеш при обработке запросов AJAX так, как вы ожидаете.) Это должно измениться в будущем, но пока вам нужно обойти это.

1
ответ дан 3 December 2019 в 22:38
поделиться

Вы можете проверить свои ресурсы с помощью дроида-эксперта по ресурсам , чтобы убедиться, что они делают то, что вы намереваетесь. Вы также должны запустить сетевую трассировку, чтобы дважды проверить заголовки запроса и ответа, используя что-то вроде Wireshark , на случай, если Firebug не рассказывает всю историю.

Возможно, jQuery включает некоторый запрос заголовки таким образом, чтобы браузер решил обойти кеш. Вы пробовали простой XMLHTTPRequest без фреймворка?

1
ответ дан 3 December 2019 в 22:38
поделиться

Хотя это не "кеш браузера", а как насчет состояния сеанса или какой-либо другой формы сохранения на стороне клиента. Вам все равно придется изучить ситуацию, если она изменена, поскольку, как указано в вашем комментарии.

Браузер выиграл ' t изначально знает, были ли данные изменены или нет, поскольку json извлекал динамически, а то, что находится в кеше, является статическим. Я думаю?

0
ответ дан 3 December 2019 в 22:38
поделиться
Другие вопросы по тегам:

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