Количество соединений настраивается в Dispatcher, а не в ConnectionPool, что только позволяет конфигурировать неактивные соединения макс и сохранить живую функциональность.
Диспетчер позволяет настроить количество подключений хостами и максимальное количество подключений, по умолчанию - 5 на хосты и всего 64. Это может показаться низким для HTTP/1, но это нормально, если вы используете HTTP/2, поскольку несколько запросов могут быть отправлены на одно соединение.
Чтобы настроить диспетчер, выполните следующие действия:
Dispatcher dispatcher = new Dispatcher();
dispatcher.setMaxRequests(100);
dispatcher.setMaxRequestsPerHost(10);
OkHttpClient client = new OkHttpClient.Builder()
.dispatcher(dispatcher)
.build();
первый аргумент maxIdleConnections. Только idleConnections будут очищены, если keepAlive истёк. Невозможно заблокировать какие-либо запросы, если достигнуто максимальное количество подключений. –