Здравствуйте, fdn721, Вы писали:
I>>[/ccode]
I>>рассмотрим такую ситуацию
I>>Имеем три потока с приоритетами Low, Medium, High
I>>в начальном состоянии поток Low захватил mutex в точке 1 потому что он первый,
I>>далее начинает работать стартует поток Medium система передает ему управление так как он имеет более высокий приоритет
I>>потом начинает работать поток High и пытается захватить mutex, так как mutex уже захвачен доходит до точки 3 и ждет
I>>так как поток High ждет, управление передается потоку Medium и пока он не отработает не произойдет инверсии приоритета для
I>>потока Low и поток High не получит управления.
I>>Вот такая дыра обнаружилась
F>Что-то у вас какое-то мутное представление о приоритете потоков.
Вполне нормальное, кстати такое поведение успешно наблюдается на kernel диаграмме под wince
когда управление передается не высоко приоритетному потоку который ждет а какому то другому потоку
впрочем что вам кажется не так в моих рассуждениях?