serverthread.java

来自「贪吃蛇网络版 运行平台 LINUX/UNIX Macintosh Window」· Java 代码 · 共 54 行

JAVA
54
字号
package logic;
import java.io.*;
import java.net.*;

public class ServerThread implements Runnable {

	private SnakeServer server;
	private Socket s;
	private int dir;
	private DataInputStream dis;
	private int playerNo;

	public ServerThread(SnakeServer ss, Socket s, int playerNo) {
		server = ss;
		this.s = s;
		this.playerNo = playerNo;
		new Thread(this).start();
	}

	public void run() {

		try {

			dis = new DataInputStream(s.getInputStream());
			while (!Thread.interrupted()) {
				// 接受按键消息
				dir = dis.read();
				// 处理按键消息
				server.handleKeyPressed(playerNo, dir);
				try
				{
					// 暂停一会,让出CPU资源
					Thread.sleep(10);
				}
				catch (InterruptedException ie)
				{
					ie.printStackTrace();
				}
				
			}

		} catch (IOException e) {
			System.out.println("Connection lost...");
			try {
				dis.close();
				System.exit(0);
			} catch (IOException e1) {
				e1.printStackTrace();
			}

		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?