3

我需要将以下内容传递int dldnow给 sendData 静态方法/委托。

public int dldnow;
Timer timer = new Timer(new TimerCallback(sendData), null, 1000*30, 1000*30);

public static void sendData(object obj)
{
  string imageCount = (string)dldnow;
  string imageCountJson = wc.DownloadString("http://*********/u.php?count=" + imageCount);
}
4

1 回答 1

9

如果要传递一次,请使用第二个构造函数参数:

System.Threading.Timer(new TimerCallback(sendData), dldnow, 1000*30, 1000*30);

如果您想定期访问它,您可以制作一个静态 volatile 字段:

public static volatile int dldnow;

(需要 volatile 以便在从多个线程访问时始终保持最新状态)

于 2013-04-10T15:38:58.193 回答