我有一个保存在 JSON 文件中的问题列表。我想每 10 秒发送一个不同的问题。 我每 10 秒启动一个计时器,但 int “position” 不能每次都递增。我该怎么办?
public override void OnStart()
{
dynamic data = Newtonsoft.Json.JsonConvert.DeserializeObject(File.ReadAllText("QCM.js"));
int pos = 0;
Timer aTimer = new Timer(2000);
aTimer.Elapsed += (sender, e) => SendData(pos, data);
pos++;
aTimer.Start();
static void SendData (int pos, dynamic data)
{
PackageHost.WriteInfo(data.Data[pos].Label);
}
最佳答案
pos
变量被lambda捕获,你可以使用
aTimer.Elapsed += (sender, e) => SendData(pos++, data);
//pos++;
关于c# - 每次具有不同参数的计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42175819/