На основе шаблона релизовать потокобезопасный контейнер типа массив (можно использовать массив как хранилище данных), с минимальным временем блокировоки (то есть акторы и GCD лучше не использовать)
На основе шаблона реализовать менеджер задач. Менеджер должен уметь выполнять задачи блоки кода (можно формить классом или структурой) в соотвествии с заданым приоритетом. Задачи должны поддерживать зависмости. Например задача А начнет выполнение после того как будут выполнены задача Б и В. Любая задача может иметь сколько угодно зависимостей. Без использования Operation
- Проект запускается;
- Основное задание выполнено частично;
- Основное задание выполнено полностью;
- Дополнительное задание выполнено полностью;
- Отсутствие ошибок и предупреждений в коде;
- Не используется Unwrap в коде;
- Однородное форматирование кода;
- Понятный нейминг сущностей в коде;
- Код защищен от дедлоков;
- Код защищен от лайфлоков;