broadcast.java

来自「Java2游戏编程源码 第九章 很好的学习Java和简单游戏编程的书籍」· Java 代码 · 共 45 行

JAVA
45
字号
// 程序:广播线程
// 范例文件:BroadCast.java

class BroadCast extends Thread  
{
   ClientThread c;
   ServerThread sThread;
   String       m;

 
   public BroadCast(ServerThread sThread)
   {
      this.sThread    = sThread;
   }

   public void run()
   {
      while(true)
      { 
         try
         {
            Thread.sleep(3000); 
         }
         catch(InterruptedException E){}

         synchronized(sThread.messages)    
         {
            if(sThread.messages.isEmpty())   
               continue;       
           
            m = (String)sThread.messages.firstElement(); 
            sThread.messages.removeElement(m);  
         }

         synchronized(sThread.Clients)  
         {
            for(int i=0;i<sThread.Clients.size();i++)
            {
               c = (ClientThread)sThread.Clients.elementAt(i);
               c.write.println(m);
            }
         }
      }
   }
}

⌨️ 快捷键说明

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