aoreh (27.11.2013 16:54, просмотров: 365) ответил ыыыыыыы на ну так вопрос в том, когда 5 закончилась, а 3 продолжает ждать, какой приоритет у 1, держащий 3? и вот зачем нужна была 4. если оставить 5 приоритет, то нарушение приоритетов - 4 задача ждет 3, если вернуть 1, то "залочка" с 3,2 - ну как-то так
охблин, шой-то ты намудрил... 1. 5-я потребовала семафор
2. задаче 1 подняли приоритет до 5
3. задача 1 отработала и отпустила семафор
4. задаче 1 вернули ее родной приоритет
5. семафор захватила задача с наивысшим приоритетом, т.е. 5-я
6. 5-я отработала, отдала семафор, наиболее высокприоритетная, ожидающая семафора (3) - захватила семафор и стала в список готовых к работе
7. 5-я что-то еще сделав уснула по своим причинам
8. управление отдалось задаче 4 как самой высокоприоритетной, готовой к работе
9. 4-я закончила исполняться
10. управление отдается 3-й