c#在使用kepware时非常慢

本文关键字:非常 kepware | 更新日期: 2023-09-27 18:07:23

我有一个c#表单应用程序,通过Kepware OPC服务器与PLC通信。但是这种交流减慢了我的GUI。我使用线程进行通信,但表单选项卡仍然很慢。我正在发送我的一部分代码。我哪里错了?

public Form1()
{
     InitializeComponent();
     Connect_Opc_Server("Kepware.KEPServerEX.V5");
     ConnectToSqlToRead();
     ShowPartType(1);
}
private void timer_Kepware_Tick(object sender, EventArgs e)
{
     Thread KepwareThread = new Thread(new ThreadStart(Kepware_Read_Write));
     if (KepwareThread.IsAlive)
     { }
     else
     {
         KepwareThread.Start();
     }
 }
public void Kepware_Read_Write()
{
    if (KepwarePLCReadError == false)
    {
        synch_read();
    }
    if (KepwarePLCReadOK == true)
    {
        synch_write();
    }           
}

c#在使用kepware时非常慢

您可能只需要创建一个线程。

private void timer_Kepware_Tick(object sender, EventArgs e)
{
    if (_KepwareThread == null)
    {
        _KepwareThread = new Thread(...);
    } 
    if (!_KepwareThread.IsAlive) 
    {
        _KewpareThread.Start();
    }
 }