Example #1
0
		public void ProcessQueue()
		{
			try
			{
				lock (_lockObj)
				{
					using (var dbFactory = new DatabaseFactory())
					{
						var repository = new TaskQueueRepository(dbFactory);
						var tasks = repository.GetTasksToRun();
						foreach (var task in tasks)
						{
							var baseTask = _taskFactory.CreateTask(task.TaskTypeEnum);
							baseTask.Load(task);
							System.Threading.Tasks.Task.Factory.StartNew(baseTask.Run);
						}
					}
				}
			}
			catch (Exception ex)
			{
				Logger.WriteError(ex);
			}
		}