0
我有一個Java項目,它主要創建一個擴展Thread的類的實例(ThreadClient)。我需要ThreadClient.run啓動2個定時器來定期運行ThreadClient類的2個方法。Java:使用定時器週期性地運行一個方法
我在互聯網上找到的例子只是表明定時器可以啓動一個類的實例的run方法,該類實例將Thread類放出。 我不需要創建一個新類,只需運行創建定時器的同一類的2個方法即可。 類似於C#的作用:
public class ThreadClient
{
private Timer _timer;
public ThreadClient() {
Start();
}
private void Start()
{
_timer = new Timer(3000); // Set up the timer for 3 seconds
_timer.Elapsed += new ElapsedEventHandler(_timer_Elapsed);
_timer.Enabled = true; // Enable it
}
private void _timer_Elapsed(object sender, ElapsedEventArgs e)
{
// do something
}
}
方法_timer_Elapsed屬於創建定時器類。
由於提前, 塞繆爾
所以你被困在? (雙關打算!) – Sikorski 2014-09-28 13:23:51
你的問題是什麼?你有沒有一個,還是這只是一個關於Java不是C#的咆哮? Java有匿名類和lambda表達式。學習使用它們。 – 2014-09-28 13:45:57
此外,你應該使用ScheduledExecutorService:http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Executors.html#newScheduledThreadPool-int- – 2014-09-28 13:51:56