Java 多线程仅适用于 2 台计算机,如何在主线程中执行此操作 [英] Java Multiple threads for just 2 computers, how to do it in main

查看:47
本文介绍了Java 多线程仅适用于 2 台计算机,如何在主线程中执行此操作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试让至少两台计算机连接到我的服务器,我将如何启动第二个线程?

I'm trying to get at least two computers to connect to my server, how would i start a second thread?

public static void main(String[] args) throws InterruptedException {
    // Create the server which waits for a client to request a connection.


while(true){
    FileSharedServer server = new FileSharedServer();
    Thread thread = new Thread(server);
    thread.start();
}
   }

这拒绝了我的连接

推荐答案

你需要等待 serverSocket.accept() 方法在你的服务器传入的连接上,并在接收到一个后启动一个线程来为它服务,但是服务器套接字保持不变,您只是在循环中等待下一个连接.

You need to wait on serverSocket.accept() method on incoming connections in your server, and after receiving one start a thread to serve it, but the server socket stay the same, you just do waiting for next connection in a loop.

while (true) {
    Socket connection = serverSocket.accept();
    new Therad() {
         public void run() {
              serveConnection(connection);
         }
    }.start();
}

这篇关于Java 多线程仅适用于 2 台计算机,如何在主线程中执行此操作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆