事件触发后,按正确顺序的c#调用方法

时间:2019-06-24 09:06:33

标签: c# events opc-ua

应用程序正在使用OPC客户端。对于每个值更改事件,此OPC客户端都会触发。在事件处理程序中,我正在使用Task.Factory.StartNew来调用方法。但是现在,我意识到该方法以错误的顺序被调用。我想按正确的顺序调用该方法。并且强制异步调用此方法,因为每个方法调用花费不同的执行时间。

事件处理程序代码段:

        private void OpcClientInterface_ValueChangeEvent(object sender, OPCClient.OPCClient.strMonitoredItems e)
    {

        string sValue = String.Empty;
        for (int i = 0; i < listOPCItemID.Count; i++)
        {
            if (listOPCItemID[i].Equals(e.sNodeID))
            {
                Task.Factory.StartNew(() => GetResult(e.oValue, e.sNodeID));
                break;
            }
        }
    }

0 个答案:

没有答案