server.java

来自「高质量Java程序设计 源代码」· Java 代码 · 共 49 行

JAVA
49
字号
package net.betterjava.memory.leak;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;

class Server extends Thread {
	private Socket outSocket;
	private int counter = 0;

	Server(int port) {
		try {
			ServerSocket socket = new ServerSocket(port);
			outSocket = socket.accept();
		} catch (IOException e) {
			err(e);
		}
	}

	public void run() {
		DataPackage dp = null;
		int i = 0;
		ObjectOutputStream out = null;
		try {
			out = new ObjectOutputStream(outSocket.getOutputStream());
			while (true) {
				dp = new DataPackage();
				System.out.println(String.valueOf(counter) + ":" + dp);
				counter++;
				out.writeObject(dp);
				out.flush();
				out.reset();
			}
		} catch (IOException e) {
			err(e);
		}
	}

	private void err(Exception e) {
		e.printStackTrace(System.out);
		System.exit(1);
	}

	public static void main(String[] args) {
		Server server = new Server(8888);
		server.start();
	}
}

⌨️ 快捷键说明

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