cleandeadconnect.java

来自「java多人版服务器」· Java 代码 · 共 66 行

JAVA
66
字号
package serverframe;import java.io.*;import java.awt.*;import java.net.*;import java.util.*;import java.awt.event.*;import javax.swing.*;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2006</p> * <p>Company: </p> * @author not attributable * @version 1.0 */class CleanDeadConnect extends Thread{   ServerThread sThread;   ClientThread temp;   String       m;   public CleanDeadConnect(ServerThread sThread)   {      this.sThread = sThread;   }   public void run()   {      while(true)      {         try         {            Thread.sleep(2000);         }         catch(InterruptedException E){}         synchronized(sThread.Clients)         {            for(int i=0;i<sThread.Clients.size();i++)//循环客户机次检查处理客户机的线程是否死亡            {               temp = (ClientThread)sThread.Clients.elementAt(i);//返回指定的线程               if(!temp.isAlive())//判断是否死亡,死亡的线程isAlive返回false               {                  ClientThread.ConnectNumber--;                  m ="talk"+ temp.getClientName() + ":" + temp.getClientAddress();                  m = m + "已离开 目前连线数: " +                      ClientThread.ConnectNumber + "\n";                  sThread.frame.ServerStatus.append(m);                  synchronized(sThread.messages)                  {                     sThread.messages.addElement(m);//把死亡线程消息加入消息队列                  }                  sThread.Clients.removeElementAt(i);//在线程vector中移除该死亡的线程               }            }         }      }   }}

⌨️ 快捷键说明

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