我是C#的新手,我只是为了个人学习而编程,我一直在尝试编写一个指令,从远程站读取一些数据到我的应用程序(m64...mw74),它运行了几分钟,但它的崩溃也许在5分钟后,请看下面的代码,我使用每1秒更新我的数据,并将其写入我的表格中的一个简单的文本框。请在这里输入图片描述
先谢谢你了。
private void Load_act()
{
actvalueL1.Text = plc.Read("mw64").ToString();
actvaluep1.Text = plc.Read("mw68").ToString();
actvaluep2.Text = plc.Read("mw71").ToString();
actvaluep3.Text = plc.Read("mw74").ToString();
InitTimer();
}
private Timer timer1;
public void InitTimer()
{
timer1 = new Timer();
timer1.Tick += new EventHandler(timer1_Tick);
timer1.Interval = 1000; // in miliseconds
timer1.Start();
//Console.ReadLine();
}
private void timer1_Tick(object sender, EventArgs e)
{
Load_act();
}
你把定时器链起来,最终会把自己的内存用完,因为它们无法处置--定时器用自己的调用创建下一个。将它们返回到一个父方法,循环你的定时器'initTimer'。