28   Критические секции.

Это часть программы, результат выполнения которой может непредсказуемо меняться, если переменные изменяются другими потоками, в то время, когда выполнение этой части еще не завершено. Она определяется по отношению к критическим данным. Каждый данный момент может находиться только 1 поток. Требования к критическим секциям:

1) в любой момент времени только 1 процесс должен находиться в критической секции, 2) не один поток не должен находиться в своей бесконечно долго, 3) не один поток не должен бесконечно долго ожидать разрешения входа в критическую секцию, 4) если 2 потока хотят войти в секции, принятие решения не должно продолжаться бесконечно долго, 5) поток, находящийся вне критической секции не должен блокировать критическую секцию другого потока, 6) если поток находящийся в своей секции, завершается естественным или аварийным путем, то режим исключения должен быть отменен.

Hosted by uCoz