2013-01-05 26 views
0

我目前正在玩弄服務器和客戶端。我希望我的服務器每秒輪詢當前系統時間。我目前使用Swing定時器將currentTimeMillis()分配回計時器的Action Listener之外的未初始化的long。目前,當我嘗試這樣做時,Eclipse會讓我花費很長時間才能獲得最終狀態,但由於這需要投票和更改,所以這是不可行的。這個想法是,這個長期將被告知通過套接字發送到客戶端。我如何使用當前的代碼來處理這個問題?或者如果有更好的方法來做到這一點,我該怎麼做?非常感謝您的幫助!將Swing Timer的Action Listener中的System.currentTimeMillis()指定回未初始化的長變量

import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import java.io.*; 
import java.net.*; 

import javax.swing.Timer; 


public class Server { 


public static void main(String[] args) { 

     long time; 

     ActionListener listener = new ActionListener(){ 
      public void actionPerformed(ActionEvent event){ 
       time = System.currentTimeMillis();   
      } 
     }; 
     Timer currentTime = new Timer(1000, listener); 
     currentTime.start(); 
} 

} 

回答

2

你可以做time類的領域。 (其實是沒有SENCE將其放置在主!

或者你可以讓final AtomicLong time = new AtomicLong();

+0

謝謝,我覺得我得到了我的問題來分類的。這是我在那裏放置了!愚蠢的錯誤! – tgmars