Java 爪哇语;“拒绝连接”;Linux上的错误消息,而不是Windows上的错误消息

Java 爪哇语;“拒绝连接”;Linux上的错误消息,而不是Windows上的错误消息,java,windows,ubuntu,connection,Java,Windows,Ubuntu,Connection,我一直在Linux和Windows上测试以下程序。在Windows上,这可以正常工作,但在Linux(Ubuntu)上,这将随机停止,出现“连接被拒绝”异常 连接问题的原因可能是什么?我正在尝试连接到收据打印机,例如,使用telnet连接到IP地址也可以 JRE for Linux中是否存在bug,或者是否存在可以使用sysctl(TCP参数)更改的内容 //java套接字客户端示例 导入java.io.*; 导入java.net。*; 公共类socket\u客户端 { 公共静态void mai

我一直在Linux和Windows上测试以下程序。在Windows上,这可以正常工作,但在Linux(Ubuntu)上,这将随机停止,出现“连接被拒绝”异常

连接问题的原因可能是什么?我正在尝试连接到收据打印机,例如,使用telnet连接到IP地址也可以

JRE for Linux中是否存在bug,或者是否存在可以使用sysctl(TCP参数)更改的内容

//java套接字客户端示例
导入java.io.*;
导入java.net。*;
公共类socket\u客户端
{
公共静态void main(字符串[]args)引发IOException
{
int i=1;
而(i<100){
套接字s=新套接字();
s、 setReuseAddress(真);
字符串host=“10.0.10.71”;
PrintWriter s_out=null;
尝试
{
s、 连接(新的InetSocketAddress(主机,9100));
System.out.println(“已连接”);
//插座书写器
//s_out=新的PrintWriter(s.getOutputStream(),true);
}
//找不到主机
捕获(未知后异常e)
{
System.err.println(“不知道主机:“+host”);
系统出口(1);
}
//向服务器发送消息
String message=“GET/HTTP/1.1\r\n\r\n”;
//s_out.println(消息);
s、 close();
System.out.println(s.isClosed());
System.out.println(“消息发送”);
i++;
}
}
}

检查端口9100是否尚未在linux会话中使用端口9100是地址为10.0.10.71的收据打印机的端口。我注意到一件事,如果我放入
线程。睡眠(2)在while循环中,那么它可以正常工作,但问题是为什么?Linux中的收据打印机、TCP/IP是否存在问题?原因是什么?在Windows中,此测试代码在连接到打印机时正常工作。检查端口9100是否尚未在linux会话中使用。端口9100是地址为10.0.10.71的收据打印机端口。我注意到,如果我放入
线程。sleep(2)在while循环中,那么它可以正常工作,但问题是为什么?Linux中的收据打印机、TCP/IP是否存在问题?原因是什么?在Windows中,此测试代码在连接到打印机时正常工作。
//java socket client example
import java.io.*;
import java.net.*;

public class socket_client
{
    public static void main(String[] args) throws IOException 
    {

 int i = 1;
while (i < 100) {

        Socket s = new Socket();
        s.setReuseAddress(true);
    String host = "10.0.10.71";
    PrintWriter s_out = null;

        try 
        {
        s.connect(new InetSocketAddress(host , 9100));
        System.out.println("Connected");

        //writer for socket
            //s_out = new PrintWriter( s.getOutputStream(), true);
        }

        //Host not found
        catch (UnknownHostException e) 
        {
            System.err.println("Don't know about host : " + host);
            System.exit(1);
        }

        //Send message to server
    String message = "GET / HTTP/1.1\r\n\r\n";
    //s_out.println( message );
s.close();
    System.out.println(s.isClosed());

    System.out.println("Message send");
i++;
    }

}
}