📄 watchthead.java
字号:
package servercoedit;/** * <p>Title: CoEditServer</p> * <p>Description: 服务器</p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: zhhz</p> * @author 景栋盛 * @version 1.0 */import java.awt.*;import java.awt.event.*;import java.net.*;import javax.swing.*;import javax.swing.border.*;import javax.swing.text.*;import java.io.*;import java.util.Vector;import java.util.StringTokenizer;// events//import com.sun.star.lang.EventObject;import java.awt.AWTEvent;import java.awt.event.WindowEvent;public class WatchThead extends Thread { JTextArea jTextArea1; List list1; Vector clients=new Vector(40); ServerSocket commandServerSocket,dataServerSocket; Socket socketCommand,socketData; ServerFrame servFrame; int active_connects=0; public WatchThead(ServerFrame serverFrame){ servFrame=serverFrame; jTextArea1=serverFrame.getTextArea(); list1=serverFrame.getlist(); commandServerSocket=serverFrame.getCommandSocket(); dataServerSocket=serverFrame.getDataSocket(); active_connects=servFrame.getActiveClint(); } public synchronized void closeAll() { while(clients.size()>0) { ClientSocket c = (ClientSocket) clients.firstElement(); list1.remove(c.name); try { c.outCom.writeBytes("QUIT:"+c.name+"\n");//输出服务端 c.socketCom.close(); c.socketDat.close(); c.stop(); } catch (IOException ee) { jTextArea1.append("System, error when exit\n"); } finally { clients.removeElement(c); } } try{ this.stop(); commandServerSocket.close(); dataServerSocket.close(); servFrame.setCommandServerSocket(null); jTextArea1.append("System:Exit Complete.\n"); } catch(IOException ee) {jTextArea1.append("System: Exit error \n ");}} public void run() { int i= 0; while(true) { if(clients.size()<40) { try { socketCommand = commandServerSocket.accept(); //socketData=dataSocket.accept(); } catch (IOException ee) { jTextArea1.append("System,Connect failed\n"); } do { ClientSocket c = new ClientSocket(servFrame,socketCommand,dataServerSocket); clients.addElement(c); //if(checkName) active_connects++; servFrame.setActiveClint(active_connects); jTextArea1.append("Now there are " + active_connects + " clients on the Server\n"); ClientSocket listdata = (ClientSocket) clients.elementAt(clients.size()-1); list1.add(listdata.name); c.start(); i++; break; } while (i < clients.size()); } else { try { Thread.sleep(500); } catch(InterruptedException ee) { jTextArea1.append("Sleep Error Happened !\n"); } } //else } //while(true) } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -