mythread2.java

来自「java message client server thread」· Java 代码 · 共 52 行

JAVA
52
字号
package com.sterning;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;
import java.util.ArrayList;
import java.util.Iterator;

public class MyThread2 implements Runnable {
	Socket s2;

	static ArrayList al2;

	static ArrayList alname;

	static DataInputStream din1;

	static DataOutputStream dout1;

	MyThread2(Socket s2, ArrayList al2, ArrayList alname) {
		this.s2 = s2;
		this.al2 = al2;
		this.alname = alname;
	}

	public void run() {
		try {
			din1 = new DataInputStream(s2.getInputStream());
			// store the user name in arraylist
			alname.add(din1.readUTF());
			every();
		} catch (Exception oe) {
		}
	}

	// send the list of user name to all clients
	static void every() throws Exception {
		Iterator i1 = al2.iterator();
		Socket st1;
		while (i1.hasNext()) {
			st1 = (Socket) i1.next();
			dout1 = new DataOutputStream(st1.getOutputStream());
			ObjectOutputStream obj = new ObjectOutputStream(dout1);
			// write the list of users in stream of all clients
			obj.writeObject(alname);
			dout1.flush();
			obj.flush();
		}
	}
}

⌨️ 快捷键说明

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