簡體   English   中英

每隔x秒在后台線程上運行方法

[英]Run method on background thread every x seconds

我有個問題。 我想在后台線程上每3秒運行一個方法。 我已經有了這個代碼:

Timer Order_Timer = new Timer();
Order_Timer.Interval = 3000;
Order_Timer.Elapsed += LoadOrders;
Order_Timer.Enabled = true;

用這種方法:

public void LoadOrders(object sender, ElapsedEventArgs e)
{
    //My code
}

UPDATE

我已經嘗試過了:

Timer Order_Timer = new Timer();
Order_Timer.Interval = 3000;
Order_Timer.Elapsed += ThreadPool.QueueUserWorkItem (o => LoadOrders(null, null));
Order_Timer.Enabled = true;

但是這給出了錯誤:

'Timer'是'System.Timers.Timer'和'System.Threading.Timer'之間的模糊引用

如何在后台線程上運行它?

AWNSER

我已經找到了:

System.Threading.Timer Order_Timer = new System.Threading.Timer(new TimerCallback(LoadOrders), null, 2000, 3000);

用方法:

public void LoadOrders(object state)
{

我已經找到了:

System.Threading.Timer Order_Timer = new System.Threading.Timer(new TimerCallback(LoadOrders), null, 2000, 3000);

用方法:

public void LoadOrders(object state)
{

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM