关闭服务器按钮问题

时间:2013-04-19 23:50:56

标签: java multithreading syntax

我是java的新手。我用按钮启动我的服务器

    JButton startServerButton = new JButton("Start");
    startServerButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            if (e.getActionCommand().equals("Start")) {
                Runnable serverRunnable = new Runnable() {
                    public void run() {
                        runServer();
                    }
                };
                Thread serverThread = new Thread(serverRunnable);
                serverThread.start();
            }
        }
    });

我想用一个按钮关闭它

    JButton endServerButton = new JButton("End");
    endServerButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            if (e.getActionCommand().equals("End")) {
                closeConnection();
            }
        }
    });

但关闭按钮不起作用...请帮忙!这是关闭功能

private void closeConnection() {
    displayMessage("\nTerminating connection\n");
    try {
        output.close();
        input.close();
        connection.close();

    } catch (IOException ioException) {
        ioException.printStackTrace();
    }

1 个答案:

答案 0 :(得分:0)

尝试以下选项:

1)结束操作置于新线程中,然后关闭开始线程'IO&然后套接字连接。 (表示从另一个线程关闭第一个线程套接字连接)

2)结束操作线程中,设置开始线程'套接字超时。

此致