чтобы повысить вероятность пе

Автор admin Четверг, 25 июня 2009 11:32

чтобы повысить вероятность переключения контекста при нечетном значении currentEvenValue. Но поскольку мутекс ограничивает доступ к критической секции только одним потоком, сбоев не будет. Вызов yield() всего лишь ускоряет выявление ошибки, если бы она была теоретически возможна. 554 Глава 11 • Многопоточное программирование Обратите внимание: функция nextValue() должна сохранить возвращаемое значение внутри критической секции, потому что возврат управления из критической секции приведет к сохранению блокировки и невозможности ее повторного получения (обычно это приводит к ситуации взаимной блокировки, описанной в конце этой главы). Первый программный поток, входящий в nextvalue(), устанавливает блокировку. Все остальные потоки, пытающиеся получить доступ в критическую секцию, приостанавливаются до момента снятия блокировки первым потоком. Когда это произойдет, планировщик выбирает другой поток, ожидающий освобождения ресурса. Таким образом, секция программы, защищенная мутексом, в любой момент доступна только для одного потока. Упрощенное программирование Если в программе организуется обработка исклю


Комментарии закрыты.