问题描述
创建多线程,每个线程创建一个socket连接不同的机器,连接主机时设定了一个超时时间,以免线程阻塞。当线程数量较多时,比如创建20个线程分别连接20台机器。前面19台机器的IP都是不存在的,最后一台是可以连接的。程序运行后,前19个线程连接超时,第20个线程连接成功。该程序作为普通Java程序运行没有问题,但是将器放入servlet在tomcat6.0下面运行时,最后一个线程也显示连接超时,请问这是什么原因,是不是tomcat对于socket活着多线程做了什么限制。ps:如果将第20个线程放在前面执行的话,是可以成功的,但是如果该线程连接时已经有十几个线程在连接等待的,该线程也会连接失败,不知道是什么原因
时间: 2024-10-24 17:22:05