Пусть имеются два параллельных процесса. В одном производится код P(S1); P(S2)

Пусть имеются два параллельных процесса. В одном производится код P(S1); P(S2) , в ином код P(S2); P(S1) , где S1 и S2 семафоры. Как будет вести себя программка?

Задать свой вопрос
1 ответ
Все зависит от того, что обеспечивают эти семафоры.
1. Семафоры обеспечивают синхронизацию потоков. Тогда будут выполнены P(S!) в первом потоке и P(S2) во втором, причем более прыткий процесс подождет, а потом работа пойдет сразу с точки P(S2) в первом потоке и P(S1) во втором.
2. Семафоры захватывают ресурсы. В этом случае произойдет обоюдная блокировка. К примеру, P(S2) в первом потоке будет ожидать некоего ресурса, пленённого вторым потоком, а P(S1) во втором потоке - ресурса, пленённого первым потоком.
3. Семафоры воспрещают одновременное выполнение некого общего участка кода. Также возможна обоюдная блокировка по принципу, описанному выше.
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт