Главная / Программирование /
Основы параллельного программирования с использованием Visual Studio 2010 / Тест 15
Основы параллельного программирования с использованием Visual Studio 2010 - тест 15
Упражнение 1:
Номер 1
Какое пространство имен содержит классы коллекций, являющимися потокобезопасными и масштабируемыми?
Ответ:
 (1) System.ThreadCollection.Concurrent 
 (2) System.Collections.ThreadCollection 
 (3) System.Collections.Concurrent 
 (4) System.Concurrent.Collections 
Номер 2
Выберите пространство имен, в котором содержаться потокобезопасные коллекции?
Ответ:
 (1) System.ThreadCollection.Concurrent 
 (2) System.Collections.ThreadCollection 
 (3) System.Collections.Concurrent 
 (4) System.Concurrent.Collections 
Номер 3
В каком пространстве имен содержаться потокобезопасные коллекции?
Ответ:
 (1) System.ThreadCollection.Concurrent 
 (2) System.Collections.ThreadCollection 
 (3) System.Collections.Concurrent 
 (4) System.Concurrent.Collections 
Упражнение 2:
Номер 1
Интерфейса IProducerConsumerCollection…
Ответ:
 (1) предоставляет перечислитель, который поддерживает простой перебор элементов в указанной коллекции 
 (2) предоставляет основной интерфейс для абстракции наборов 
 (3) определяет метод, реализуемый типом для сравнения двух объектов 
 (4) обеспечивает унифицированное представление для коллекций производителей/потребителей 
Номер 2
Выберите верное назначение интерфейса IProducerConsumerCollection.
Ответ:
 (1) предоставляет перечислитель, который поддерживает простой перебор элементов в указанной коллекции 
 (2) предоставляет основной интерфейс для абстракции наборов 
 (3) определяет метод, реализуемый типом для сравнения двух объектов 
 (4) обеспечивает унифицированное представление для коллекций производителей/потребителей 
Номер 3
Для чего используется интерфейс IProducerConsumerCollection
Ответ:
 (1) предоставляет перечислитель, который поддерживает простой перебор элементов в указанной коллекции 
 (2) предоставляет основной интерфейс для абстракции наборов 
 (3) определяет метод, реализуемый типом для сравнения двух объектов 
 (4) обеспечивает унифицированное представление для коллекций производителей/потребителей 
Упражнение 3:
Номер 1
Выберите из списка методы, которые относятся к интерфейсу IProducerConsumerCollection
Ответ:
 (1) TryAdd 
 (2) ToArray 
 (3) Enter 
 (4) CopyTo 
 (5) GetEnumerator 
 (6) IsSynchronized 
 (7) IsHeldByCurrentThread 
 (8) TryEnter 
 (9) TryTake 
Номер 2
Какие методы позволяет использовать интерфейс IProducerConsumerCollection?
Ответ:
 (1) TryAdd 
 (2) ToArray 
 (3) Enter 
 (4) CopyTo 
 (5) GetEnumerator 
 (6) IsSynchronized 
 (7) IsHeldByCurrentThread 
 (8) TryEnter 
 (9) TryTake 
Номер 3
Какие методы не относятся к интерфейсу IProducerConsumerCollection?
Ответ:
 (1) TryAdd 
 (2) ToArray 
 (3) Enter 
 (4) CopyTo 
 (5) GetEnumerator 
 (6) IsSynchronized 
 (7) IsHeldByCurrentThread 
 (8) TryEnter 
 (9) TryTake 
Упражнение 4:
Номер 1
Spinlock это…
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 2
Какое определение Spinlock является верным?
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 3
Выберите верное определение Spinlock.
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Упражнение 5:
Номер 1
Какая группа методов и свойств соответствует Spinlock?
Ответ:
 (1) IsHeld, IsThreadOwnerTrackingEnabled, TryExit, TryEnter 
 (2) Push, IsHeldByCurrentThread, TryRemove, TryUpdate 
 (3) IsHeld, IsHeldByCurrentThread, Exit, TryEnter 
 (4) Push, TryAdd, Exit, TryEnter 
 (5) IsHeld, SpinUntil, TryPop, TryUpdate 
Номер 2
Выберите группу методов и свойств соответствующих Spinlock.
Ответ:
 (1) IsHeld, IsThreadOwnerTrackingEnabled, TryExit, TryEnter 
 (2) Push, IsHeldByCurrentThread, TryRemove, TryUpdate 
 (3) IsHeld, IsHeldByCurrentThread, Exit, TryEnter 
 (4) Push, TryAdd, Exit, TryEnter 
 (5) IsHeld, SpinUntil, TryPop, TryUpdate 
Номер 3
Выберите из списка методы и свойства, которые используются в SpinLock
Ответ:
 (1) IsHeld 
 (2) TryAdd 
 (3) Add 
 (4) IsThreadOwnerTrackingEnabled 
 (5) TryEnter 
 (6) Exit 
 (7) Push 
Упражнение 6:
Номер 1
SpinWait это…
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 2
Какое определение SpinWait является верным?
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 3
Выберите верное определение SpinWait.
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Упражнение 7:
Номер 1
Выбери группу методов и свойств соответствующих SpinWait.
Ответ:
 (1) Count, NextSpinWillYield, SpinOnce, SpinUntil 
 (2) Push, PushRange, TryRemove, TryUpdate 
 (3) Count, IsHeldByCurrentThread, Exit, TryPopRange 
 (4) Count, TryPop, SpinUntil, TryEnter 
 (5) Push, TryAdd, Exit, NextSpinWillYield 
 (6) Enqueue, IsHeld, SpinUntil, TryUpdate 
Номер 2
Какая группа методов и свойств соответствует SpinWait?
Ответ:
 (1) Count, NextSpinWillYield, SpinOnce, SpinUntil 
 (2) Push, PushRange, TryRemove, TryUpdate 
 (3) Count, IsHeldByCurrentThread, Exit, TryPopRange 
 (4) Count, TryPop, SpinUntil, TryEnter 
 (5) Push, TryAdd, Exit, GetConsumingEnumerable 
 (6) Enqueue, IsHeld, SpinUntil, TryUpdate 
Номер 3
Выберите из списка методы и свойства, которые используются в SpinWait
Ответ:
 (1) Count 
 (2) IsHeld 
 (3) TryRemove 
 (4) NextSpinWillYield 
 (5) Exit 
 (6) SpinOnce 
Упражнение 8:
Номер 1
ConcurrentQueue это…
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 2
Какое определение ConcurrentQueue является верным?
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 3
Выберите верное определение ConcurrentQueue.
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Упражнение 9:
Номер 1
Какая группа методов и свойств соответствует ConcurrentQueue?
Ответ:
 (1) Enqueue, TryPeek, TryDequeue 
 (2) TryPeek, TryTake, Take 
 (3) TryDequeue, Add, TryAdd 
 (4) Enqueue, TryPeek, TryAdd 
Номер 2
Выбери группу методов и свойств соответствующих ConcurrentQueue.
Ответ:
 (1) Enqueue, TryPeek, TryDequeue 
 (2) TryPeek, TryTake, Take 
 (3) TryDequeue, Add, TryAdd 
 (4) Enqueue, TryPeek, TryAdd 
Номер 3
Выберите из списка методы и свойства, которые используются в ConcurrentQueue.
Ответ:
 (1) Enqueue 
 (2) TryPeek 
 (3) TryTake 
 (4) TryAdd 
 (5) TryDequeue 
 (6) Take 
Упражнение 10:
Номер 1
ConcurrentStack это…
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 2
Какое определение ConcurrentStack является верным?
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 3
Выберите верное определение ConcurrentStack.
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Упражнение 11:
Номер 1
Выбери группу методов и свойств соответствующих ConcurrentStack.
Ответ:
 (1) TryAdd, TryPopRange, Exit, TryEnter 
 (2) Push, NextSpinWillYield, TryPopRange, Reset 
 (3) PushRange, Push, TryDequeue, SpinOnce 
 (4) Push, PushRangeTryPeek, TryPop 
 (5) Add, TryPeek, TryTake, TryPop 
 (6) TryAdd, TryGetValue, TryPopRange, TryUpdate 
Номер 2
Какая группа методов и свойств соответствует ConcurrentStack?
Ответ:
 (1) TryAdd, TryPopRange, Exit, TryEnter 
 (2) Push, NextSpinWillYield, TryPopRange, Reset 
 (3) PushRange, Push, TryDequeue, SpinOnce 
 (4) Push, PushRangeTryPeek, TryPop 
 (5) Add, TryPeek, TryTake, TryPop 
 (6) TryAdd, TryGetValue, TryPopRange, TryUpdate 
Номер 3
Выберите из списка методы и свойства, которые используются в ConcurrentStack.
Ответ:
 (1) Push 
 (2) PushRange 
 (3) TryPeek 
 (4) TryAdd 
 (5) TryPopRange 
 (6) TryEnter 
Упражнение 12:
Номер 1
ConcurrentBag это…
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 2
Какое определение ConcurrentBag является верным?
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 3
Выберите верное определение ConcurrentBag.
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Упражнение 13:
Номер 1
Выбери группу методов и свойств соответствующих СoncurrentBag.
Ответ:
 (1) TryAdd, TryTake, TryPop 
 (2) Add, TryPeek, TryTake 
 (3) TryTake, Take, TryAdd 
 (4) Peek, TryPeek, TryAdd 
Номер 2
Какая группа методов и свойств соответствует СoncurrentBag?
Ответ:
 (1) TryAdd, TryTake, TryPop 
 (2) Add, TryPeek, TryTake 
 (3) TryTake, Take, TryAdd 
 (4) Peek, TryPeek, TryAdd 
Номер 3
Выберите из списка методы и свойства, которые используются в СoncurrentBag.
Ответ:
 (1) Add 
 (2) Peek 
 (3) Take 
 (4) TryPeek 
 (5) TryTake 
 (6) TryAdd 
Упражнение 14:
Номер 1
ConcurrentDictionary это…
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 2
Какое определение ConcurrentDictionary является верным?
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 3
Выберите верное определение ConcurrentDictionary.
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Упражнение 15:
Номер 1
Выбери группу методов и свойств соответствующих ConcurrentDictionary.
Ответ:
 (1) TryAdd, TryPopRange, Exit, TryEnter 
 (2) GetOrAdd, NextSpinWillYield, TryPopRange, ContainsKey 
 (3) PushRange, TryRemove, TryDequeue, SpinOnce 
 (4) ContainsKey, PushRange, TryPeek, TryPop 
 (5) GetOrAdd, TryRemove, TryUpdate, ContainsKey 
 (6) TryUpdate, TryGetValue, TryUpdate, TryUpdate 
Номер 2
Какая группа методов и свойств соответствует ConcurrentDictionary?
Ответ:
 (1) TryAdd, TryPopRange, Exit, TryEnter 
 (2) GetOrAdd, NextSpinWillYield, TryPopRange, ContainsKey 
 (3) PushRange, TryRemove, TryDequeue, SpinOnce 
 (4) ContainsKey, PushRange, TryPeek, TryPop 
 (5) GetOrAdd, TryRemove, TryUpdate, ContainsKey 
 (6) TryUpdate, TryGetValue, TryUpdate, TryUpdate 
Номер 3
Выберите из списка методы и свойства, которые используются в ConcurrentDictionary.
Ответ:
 (1) GetOrAdd 
 (2) NextSpinWillYield 
 (3) TryPeek 
 (4) TryUpdate 
 (5) SpinOnce 
 (6) ContainsKey 
Упражнение 16:
Номер 1
BlockingCollection это…
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 2
Какое определение BlockingCollection является верным?
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Номер 3
Выберите верное определение BlockingCollection.
Ответ:
 (1) потокобезопасная коллекция, обслуживаемая по принципу "последним поступил — первым обслужен" (LIFO) 
 (2) тип синхронизации, который используется в низкоуровневых сценариях, чтобы избежать ресурсоемких переключений контекста и переходов в режим ядра, необходимых для событий ядра 
 (3) потокобезопасная коллекция, которая осуществляет блокировку и ожидает, пока не появится возможность выполнить действие по добавлению или извлечению элемента 
 (4) потокобезопасная коллекция, обслуживаемая по принципу "первым поступил — первым обслужен" (FIFO) 
 (5) потокобезопасная неупорядоченная коллекция объектов, которая реализует концепцию отображения потоков на используемые внутренне массивы, и старается избежать блокировок 
 (6) потокобезопасная коллекция пар "ключ-значение", доступ к которой могут одновременно получать несколько потоков 
 (7) структура, которая представляет низкоуровневый взаимоисключающий примитив синхронизации, выполняющий цикл в ожидании получения блокировки 
Упражнение 17:
Номер 1
Выбери группу методов и свойств соответствующих BlockingCollection.
Ответ:
 (1) ContainsKey, CompleteAdding, AddOrUpdate 
 (2) TryRemove, CompleteAdding, GetConsumingEnumerable, Add 
 (3) TryPeek, Add, ContainsKey, TryDequeue 
 (4) TryAdd, Count, CompleteAdding, Reset 
 (5) Add, TryAdd, CompleteAdding, GetConsumingEnumerable 
 (6) GetConsumingEnumerable, ContainsKey, TryDequeue 
Номер 2
Какая группа методов и свойств соответствует BlockingCollection?
Ответ:
 (1) ContainsKey, CompleteAdding, AddOrUpdate 
 (2) TryRemove, CompleteAdding, GetConsumingEnumerable, Add 
 (3) TryPeek, Add, ContainsKey, TryDequeue 
 (4) TryAdd, Count, CompleteAdding, Reset 
 (5) Add, TryAdd, CompleteAdding, GetConsumingEnumerable 
 (6) GetConsumingEnumerable, ContainsKey, TryDequeue 
Номер 3
Выберите из списка методы и свойства, которые используются в BlockingCollection.
Ответ:
 (1) Add 
 (2) TryAdd 
 (3) TryPeek 
 (4) CompleteAdding 
 (5) TryDequeue 
 (6) GetConsumingEnumerable