Java服务器套接字

吉德·纽文惠岑

我有一个小问题。我想使用服务器套接字将播放器列表发送到客户端。但是由于某种原因,当我尝试运行该应用程序时,它将在到达时停止socket = serverSocket.accept();我在Google上尝试过伺服服务,但没有用。

package Serverside;
import java.io.*;
import java.net.*;
import com.mygdx.game.Sprites.Hero;
import com.mygdx.game.Sprites.Player;
import java.util.ArrayList;
/**
 *
 * @author Tjidde Nieuwenhuizen
 */
public class ServerArenaOfLegends {
    static ServerSocket serverSocket;
    static Socket socket;
    static ObjectOutputStream outStreamObj;
    static ObjectInputStream inStreamObj;
    static ArrayList<Player> playerList;
    public static void main(String[] args) {
        ServerArenaOfLegends sr = new ServerArenaOfLegends();
        sr.run();
    }
    private void run() {
        playerList = new ArrayList<Player>();
        Player p1;
        Hero hero = new Hero(2, null, 3);
        p1 = new Player(null, null, hero);
        playerList.add(p1);
        try {
            serverSocket = new ServerSocket(5555);
            socket = serverSocket.accept();
            outStreamObj = new ObjectOutputStream(socket.getOutputStream());
            while (true) {
                outStreamObj.writeObject(playerList);
            }
        } catch (Exception ex) {
            System.out.println(ex.toString());
        }
    }
}
杰科布

如果运行此示例:

public static void main(String[] args) {

        try {
            ServerSocket serverSocket = new ServerSocket(5555);
            Socket socket = serverSocket.accept();
            System.out.println("DONE");
        } catch (IOException ex) {
            System.out.println(ex.getMessage());
        }
    }

该程序将挂起。

然后在命令行上运行“ telnet 127.0.0.1 5555”,程序将打印“ DONE”,然后结束。

因此,.accept()会阻塞直到它获取数据,这就是您所看到的行为。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java服务器套接字响应

来自分类Dev

Java Web套接字服务器

来自分类Dev

设置客户端套接字和服务器套接字侦听器 (Java)

来自分类Dev

Java套接字服务器无响应

来自分类Dev

Java HTTP / 2服务器套接字

来自分类Dev

Java套接字,回显服务器

来自分类Dev

Java客户端/服务器套接字问题

来自分类Dev

带有 Java 套接字服务器的 Rest API

来自分类Dev

Java TCP 客户端/服务器套接字

来自分类Dev

将输入从C套接字客户端读取到Java套接字服务器

来自分类Dev

将消息从Java套接字发送到PHP服务器套接字

来自分类Dev

无法从Java套接字服务器接收数据到C套接字客户端

来自分类Dev

将输入从C套接字客户端读取到Java套接字服务器

来自分类Dev

Java套接字服务器-客户端;卡在服务器端

来自分类Dev

Cordova:创建套接字服务器

来自分类Dev

套接字TCP服务器

来自分类Dev

闪亮的服务器:套接字挂起

来自分类Dev

PHP套接字服务器挂起

来自分类Dev

套接字服务器最佳方法

来自分类Dev

限制套接字服务器访问

来自分类Dev

Matlab套接字服务器

来自分类Dev

PHP套接字服务器挂起

来自分类Dev

绑定服务器套接字

来自分类Dev

套接字服务器最佳方法

来自分类Dev

套接字未写入服务器

来自分类Dev

从套接字获取服务器名称

来自分类Dev

TCP套接字服务器

来自分类Dev

服务器的非阻塞套接字

来自分类Dev

套接字服务器性能