Вложения асинхронный/ждут функции
как показано ниже ,каковы наилучшие методы использования async/await для нескольких задач :
полукод:
public class Process { public Process() { this.ProcessItem(); } } private async void ProcessItem() { while (true) { await this.FetchDeviceData(); //Read From Devices await Task.Delay(2000); //300000 await this.Process(); //Insert Into DataBase } } private async Task FetchDeviceData() { await Task.Run(() => { //Read From all Devices; } } private async Task Process() { if (!(await RDataBase.ProcessItem(Mem,Date))) //Update Record; } //---------------------- RDataBase Class public static async Task<bool> ProcessItem(int Memb, int Date) { return await Task.Run(() => { try { //Array List = Read Device Info From DataBase return True; } catch { return false; } }); }
Что я уже пробовал:
Я вызываю экземпляр класса Process в Global.ascx в методе Application_Start ().
David_Wimbley
Зависят ли эти задачи друг от друга или не могут выполняться параллельно?
bernova
они должны выполняться одновременно