c # Вызвать метод в правильной последовательности после запуска события - PullRequest
0 голосов
/ 24 июня 2019

Приложение использует 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;
            }
        }
    }
...