private static TaskStatus ProcessSubmittedTask(SubmittedTask task) { var oneSecond = 1000; var thirtySeconds = 30000; // Simulate "Processing" Random rnd = new Random(); Thread.Sleep(rnd.Next(oneSecond, thirtySeconds)); return(TaskStatus.Finished); }
public static async Task ImportSubmittedTasks() { try { // Note: kind of pointless to offload this now, but could be useful if we begin // pulling in from multiple states/statuses and need to massage data var allQueuedTasks = SubmittedTask.GetTasksByStatus(TaskStatus.Queued); foreach (SubmittedTask task in allQueuedTasks) { await QueueSubmittedTask(task); } } catch (Exception ex) { Console.WriteLine("Error: Unable to query DB for submitted tasks."); EventLog.WriteEntry(_eventLogSource, ex.Message, EventLogEntryType.Error); } }
private static Task QueueSubmittedTask(SubmittedTask task) { return(Task.Run(() => { try { //SubmittedTask oldTask; If exists, could pull out to see if varies if (!_concurrentSubmittedTasks.ContainsKey(task.Id)) { _concurrentSubmittedTasks.TryAdd(task.Id, task); _concurrentDirtyTasks.TryAdd(task.Id, task); } } catch (Exception ex) { Console.WriteLine("Error: Unable to process a submitted task."); EventLog.WriteEntry(_eventLogSource, ex.Message, EventLogEntryType.Error); } })); }