2011-gre-cs-practice-book.pdf/Q47 — различия между версиями
Материал из DISCOPAL
Строка 1: | Строка 1: | ||
== Вопрос: Q47-08c765 == | == Вопрос: Q47-08c765 == | ||
+ | Рассмотрим следующие 2 многопоточные задачи, в которых операции присваивания исполняются атомарно. Изначально, переменные с разделяемым состоянием x и y равны 0. | ||
+ | |||
+ | * Задача 1 | ||
<code-c> | <code-c> | ||
− | + | x = 1 | |
− | + | a = y | |
− | + | </code-c> | |
− | + | * Задача 2 | |
− | + | <code-c> | |
− | + | y = 1 | |
− | + | b = x | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
</code-c> | </code-c> | ||
+ | В конце выполнения обеих многопоточных задач значения переменных a и b проверяются. | ||
− | + | * I. a==0a==0 → b==1b==1 | |
− | + | * II. b==0b==0 → a==1a==1 | |
− | + | * III. a==1a==1 → b==1b==1 | |
− | * I. | + | |
− | * II. | + | |
− | * III. | + | |
=== Ответы === | === Ответы === | ||
− | * (A) Только I | + | * (A) Только I |
− | * (B) | + | * (B) Только II |
− | * (C) | + | * (C) Только III |
− | * (D) II | + | * (D) I и II |
− | * | + | * (E) I, II и III |
=== Объяснение === | === Объяснение === | ||
− | {{cstest-source|2011-gre-cs-practice-book.pdf| | + | {{cstest-source|2011-gre-cs-practice-book.pdf|38|46}} |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
{{question-ok|}} | {{question-ok|}} | ||
{{reserve-task|[[Участник:Nikitashapovalov|Nikitashapovalov]] 20:53, 8 января 2025 (UTC)}} | {{reserve-task|[[Участник:Nikitashapovalov|Nikitashapovalov]] 20:53, 8 января 2025 (UTC)}} |
Версия 23:56, 8 января 2025
Вопрос: Q47-08c765
Рассмотрим следующие 2 многопоточные задачи, в которых операции присваивания исполняются атомарно. Изначально, переменные с разделяемым состоянием x и y равны 0.
- Задача 1
x = 1 a = y
- Задача 2
y = 1 b = x
В конце выполнения обеих многопоточных задач значения переменных a и b проверяются.
- I. a==0a==0 → b==1b==1
- II. b==0b==0 → a==1a==1
- III. a==1a==1 → b==1b==1
Ответы
- (A) Только I
- (B) Только II
- (C) Только III
- (D) I и II
- (E) I, II и III
Объяснение
Исходники — вопрос 46 на 38 странице книги «2011-gre-cs-practice-book.pdf»
Задача зарезервирована: Nikitashapovalov 20:53, 8 января 2025 (UTC)