Intereting Posts
Мобильные направления движения в Интернете из текущего местоположения Android: «Camera.takePicture failed» Исключение Удалить приложение Setup Wizard в Android 4+? Невозможно удалить мультимедийный файл на Android-телефоне с помощью AIR Как реализовать Swipe view в мобильном телефоне с помощью javascript? В андроиде, как сделать изображение расти с одной точки с помощью анимации? Как использовать пользовательские шрифты в DrawerLayout и NavigationView Не удалось запустить эмулятор Android, так как не удалось инициализировать эмуляцию framebufferHAX в Windows 7 SetMinDate (…) для DatePicker не работает, когда вызывается второй раз Поиск мобильных устройств Bluetooth Bluetooth Интеграция с facebook для Android При запуске на Nougat, почему заголовок отключается при использовании CollapsingToolbarLayout? Android: доступ к стеку активности программно Отдельные строковые значения Android для выпуска и отладки Scrollview вертикальный и горизонтальный в android

Каков максимальный размер запроса-очереди волей-библиотек

Я использую библиотеку Volley в Android, я хочу знать, какой максимальный размер очереди разрешен с использованием библиотеки Volley . Я ничего не нашел в связи с этим. Как я знаю, вам нужно добавить сетевой запрос в очередь, но я не знаю, что такое максимальный размер этого, что я могу поставить его в очереди параллельно.

 RequestQueue requestQueue = Volley.newRequestQueue(this); .... // block of code requestQueue.add(jsonObjectRequest); 

Вы, вероятно, путаете 2 вещи:

  • Размер очереди ожидания
  • Максимальные параллельные сетевые запросы

Для размера очереди ожидания:

 /** The queue of requests that are actually going out to the network. */ private final PriorityBlockingQueue<Request<?>> mNetworkQueue = new PriorityBlockingQueue<Request<?>>(); 

Волейбол использует PriorityBlockingQueue, который сам использует PriorityQueue с пропускной способностью по умолчанию 11.

 private static final int DEFAULT_INITIAL_CAPACITY = 11; ... public PriorityQueue() { this(DEFAULT_INITIAL_CAPACITY, null); } 

Для максимальных параллельных сетевых запросов:

 RequestQueue requestQueue = Volley.newRequestQueue(this); 

позвоню

 RequestQueue queue = new RequestQueue(new DiskBasedCache(cacheDir), network); 

И это вызывает

 public RequestQueue(Cache cache, Network network) { this(cache, network, DEFAULT_NETWORK_THREAD_POOL_SIZE); } 

И DEFAULT_NETWORK_THREAD_POOL_SIZE

 private static final int DEFAULT_NETWORK_THREAD_POOL_SIZE = 4; 

Таким образом, по умолчанию существует 4 параллельных потока, обрабатывающих запросы (так что максимум 4 запроса одновременно).


ТЛ; др

Размер очереди ожидания 11 и не может быть изменен; В то время как максимальные параллельные сетевые запросы равны 4, которые могут быть изменены с помощью конструктора RequestQueue.