2016-10-13 2 views

ответ

1

Connection.networkTimeout был введен в Java 7, и предназначена для водителя, чтобы заботиться о правильном очистка (с использованием предоставленного исполнителя). Я не уверен, насколько хорошо этот метод поддерживается реализациями драйверов.

С другой стороны, socketTimeout является конкретным драйвером (хотя большинство драйверов имеют аналогичные настройки) и, как правило, используется для настройки тайм-аута гнезда низкого уровня с использованием Socket.setSoTimeout(int).

Основное отличие заключается в том, что setNetworkTimeout определяет поведение, ожидаемое от водителя после появления этого тайм-аута (недействительным и закрыть соединение), в то время как socketTimeout конфигурации может просто оставить соединение в подвешенном состоянии (т.е. это может показаться открытым, но не используется). setNetworkTimeout также позволяет изменять таймаут, пока соединение уже открыто.

Смежные вопросы