Ce sont des valeurs de délai d'expiration forcée par la JVM pour l'établissement de la connexion TCP et est en attente de la lecture des données à partir de socket.
Si la valeur est réglée sur l'infini, vous ne serez pas attendre éternellement. Cela signifie simplement JVM n'a pas de délai d'attente et le système d'exploitation sera responsable de tous les délais d'attente. Cependant, les délais d'attente sur le système d'exploitation peut être très long. Sur certains réseaux lents, j'ai vu des délais d'attente aussi longtemps que 6 minutes.
Même si vous définissez la valeur de délai d'expiration pour la prise, il peut ne pas fonctionner si le délai d'attente se produit dans le code natif. On peut reproduire le problème sur Linux par la connexion à un hôte bloqué par le pare-feu ou de débrancher le câble sur l'interrupteur.
La seule approche pour gérer timeout TCP est d'exécuter le code de connexion dans un thread différent, et d'interrompre le fil quand il prend trop de temps.