diff --git a/AsbCloudInfrastructure/Background/OrderedList.cs b/AsbCloudInfrastructure/Background/OrderedList.cs deleted file mode 100644 index 1f583a82..00000000 --- a/AsbCloudInfrastructure/Background/OrderedList.cs +++ /dev/null @@ -1,41 +0,0 @@ -п»їusing System.Linq; - -namespace System.Collections.Generic -{ - public class OrderedList: IEnumerable, ICollection - where T : notnull - { - private readonly List list = new List(); - - private readonly Func keySelector; - private readonly bool isDescending = false; - - private IOrderedEnumerable OrdredList => isDescending - ? list.OrderByDescending(keySelector) - : list.OrderBy(keySelector); - - public int Count => list.Count; - - public bool IsReadOnly => false; - - public OrderedList(Func keySelector, bool isDescending = false) - { - this.keySelector = keySelector; - this.isDescending = isDescending; - } - - public void Add(T item) => list.Add(item); - - public void Clear()=> list.Clear(); - - public bool Contains(T item)=> list.Contains(item); - - public void CopyTo(T[] array, int arrayIndex)=> list.CopyTo(array, arrayIndex); - - public bool Remove(T item)=> list.Remove(item); - - public IEnumerator GetEnumerator() => OrdredList.GetEnumerator(); - - IEnumerator IEnumerable.GetEnumerator() => GetEnumerator(); - } -} diff --git a/AsbCloudInfrastructure/Background/readme.md b/AsbCloudInfrastructure/Background/readme.md new file mode 100644 index 00000000..2026f2c4 --- /dev/null +++ b/AsbCloudInfrastructure/Background/readme.md @@ -0,0 +1,11 @@ +# BackgroundWorker +Класс выполнения разовой фоновой работы. +Для каждой работы создается свой scope. + +# NotificationBackgroundWorker +Предназначен для различных оповещений пользователей разными способами. +Фактически это дополнительный экземпляр BackgroundWorker, чтобы оповещения не ждали завершения долгих операций из стандартного BackgroundWorker. +Не должен давать большой нагрузки БД. + +# PeriodicBackgroundWorker +Класс выполнения периодической фоновой работы. diff --git a/AsbCloudInfrastructure/Background/todo.md b/AsbCloudInfrastructure/Background/todo.md deleted file mode 100644 index b8b30852..00000000 --- a/AsbCloudInfrastructure/Background/todo.md +++ /dev/null @@ -1,12 +0,0 @@ -# Проблемы фонового сервиса -- Нужно состояние по загрузки сервиса и очереди работ. - - Все ли задачи укладываются в таймаут, - - Сколько свободного времени остается, - - Что делает текущая задача, -- нет управления сервисом. Для исключения его влияния на другие процессы сервера. - - отключать/включать целиком - - отключать/включать отдельную периодическую задачу - -# Сделать -- Разработать dto статуса задачи -- Отказаться от периодической задачи, при добавлении в хранилище задач период будет параметром метода добавления.