задание записано за преподом, поэтому такое сумбурное
очередь, в которой хранятся задания в виде текстовых строчек
один поток добавляет задания в очередь второй выводит на экран и удаляет из очереди
нужна синхронизация
первый добавил сказал что задание готово (может добавлять и по две и по три) второй начал обрабатывать и удалять, может сказать что очередь чистая
корректный выход из второго потока (первый поток говорит не только что очередь загружена но и работа окончена)
синхронизация с помощью мьютексов
в помощь использовать условную переменную (работает в паре с мьютексом) можно из ОС или в стандарте с++(проще)
первый поток создаётся при запуске программы
для очереди нужна структура данных которая позволяет удалять и добавлять элементы в начало и конец (можно использовать и queue, но лучше использовать список) ограничений на очередь не надо
задачи выбираются из пула заданий
задаём массив (например 25 строк)
для окончания работы можно использовать атомарную переменную, а не условную (например буллевая)
условная нужна потому что второй поток будет находиться в бесконечном цикле ожидания работы а переменная переводит в режим сна
напишите срок к которому сможете
если есть какие то вопросы- пишите - уточню
Гарантия на работу | 1 год |
Средний балл | 4.96 |
Стоимость | Назначаете сами |
Эксперт | Выбираете сами |
Уникальность работы | от 70% |