Параллельные вычисления и многопоточное программирование - ответы

Количество вопросов - 156

Какие утверждения справедливы для метода Wait класса SemaphoreSlim?

Что происходит, когда в многопоточном приложении один поток пытается непосредственно обращаться к элементам управления визуального интерфейса, созданным в другом потоке?

Цикл может допускать распараллеливание, если:

Какие высказывания истинны для цикла Parallel.ForEach:

Какой из операторов может встречаться только в итерации обычного цикла for, но не Parallel.For?

Каково назначение метода ContinueWith класса Task?

Что происходит с потоком, когда вызывается метод Interrupt для прерывания работы потока?

Если задан граф зависимостей, то легко считаются следующие характеристики:

Что понимается под понятием "бизнес-логика" в данном контексте?

Что называется свопингом в стратегии управления памятью операционной системой:

Построение многопоточного приложения, в котором интерфейс приложения выполняется в одном потоке, а бизнес-логика – в другом, необходимо для того, чтобы:

Критическая секция может быть закрыта оператором lock(Locker), где объект Locker играет роль замка на входе в секцию. Каковы утверждения справедливы для объекта Locker?

Что такое блокировка в параллельных вычислениях?

Какой сложности в идеале можно добиться на суперкомпьютере для задачи умножения квадратных матриц размерности N * N?

При выполнении программы встретилось объявление: Thread thread_one; Что происходит в результате объявления?

Какие утверждения справедливы относительно метода Invoke, вызываемого при работе с элементами управления?

Что такое мультипрограммный режим работы?

Сложность шагового алгоритма пузырьковой сортировки задается формулой O \left (\frac{n^2}{p^2} +n \cdot p \right ). Справедливость каких утверждений следует из этого?

Укажите истинные высказывания:

Укажите высказывания, истинные при работе с пулом потоков:

Какие утверждения справедливы для шагового алгоритма пузырьковой сортировки?

Сколько методов, включающих блокировку, имеется у класса ReaderWriterLockSlim?

Что такое пул потоков?

Укажите истинные высказывания:

Какие утверждения справедливы по отношению к критическим секциям:

Как узнать при выполнении Parallel.For номер минимальной итерации, на которой происходит прерывание цикла, инициируемое выполнением оператора (метода) Break?

Какие методы есть в классе Thread, позволяющие потоку прервать выполнение дочерних потоков:

Процессы ОС:

Укажите истинные высказывания, связанные с вычислением суммы сходящегося ряда:

Сколько классов компьютеров в классификации Флинна:

Если полагать, что единственным общим ресурсом является оперативная память, то какие проблемы характерны для параллельных вычислений, выполняемых на системах с распределенной памятью (кластеров):

Укажите корректную формулу, связывающую эффективность и ускорение:

Если полагать, что единственным общим ресурсом является оперативная память, то какие проблемы параллельных вычислений не связаны с блокировкой:

Законы Амдаля и Густавсона-Барсиса:

Укажите истинные высказывания:

Если задан граф зависимостей, то время выполнения критического пути задает:

Потоки ОС:

По какой причине поток может перейти в состояние "ожидания":

Укажите истинные высказывания, связанные с управлением памятью:

Потоко – безопасный модуль это:

Реентерабельный модуль это:

Что понимается под чисткой цикла?

Рассмотрим цикл for(int i =0; i <N; i++ ) { x = F(…); } с одним оператором присваивания в теле цикла. Какие утверждения являются справедливыми в зависимости от вида функции F?

Алгоритм вычисления определенного интеграла:

Сколько способов существует для параллельного вычисления числа ПИ:

Какие утверждения справедливы для алгоритма пузырьковой сортировки?

Какие утверждения справедливы для алгоритма сортировки "чет – нечет"?

Сколько конструкторов у класса Thread?

В момент создания потока ему нужно передать:

При выполнении программы был создан поток thread_one. Что происходит в результате выполнения оператора thread_one.Start;?

Что происходит с потоком, когда вызывается метод Abort для прерывания работы потока?

В параллельном алгоритме пузырьковой сортировки элементы массива потоков создаются при выполнении следующего оператора: threads[i] = new Thread(sorts[i].BubbleSortPart);. Какие утверждения являются справедливыми?

При переходе от потоко - опасного класса Account к потоко - безопасному классу AccountSafe какое решение следует выбрать, следуя хорошему стилю программирования?

Какие утверждения справедливы по отношению к критической секции?

Какие утверждения справедливы для ситуации клинча?

Что понимается под мягкой блокировкой?

Какие высказывания являются истинными по отношению к методу Pulse(obj) из класса Monitor?

Какие утверждения справедливы для классической задачи "Обедающие философы"?

Что не может делать программист при работе с пулом потоков?

Какие утверждения справедливы относительно метода QueueUserWorkItem?

Укажите недостатки работы с пулом потоков:

Сколько конструкторов у класса Task?

Укажите истинные высказывания:

Определить, являются ли итерации цикла независимыми, может:

Каких методов нет у класса Parallel?

Каких методов нет у класса Parallel?

Отметьте высказывания, истинные по отношению к методу, реализующему тело цикла Parallel.For:

Отметьте высказывания, истинные по отношению к семантике двух методов Parallel.For и Parallel.ForEach:

При выполнении методов Parallel.For и Parallel.ForEach на одной или нескольких итерациях могут возникать исключительные ситуации. Правда ли, что: 

Какие утверждения справедливы относительно понятия интерфейс?

Работа с какими классами ведется в интерфейсной части приложения?

Под наблюдаемыми параметрами понимаются:

Какие утверждения справедливы по отношению к методам Invoke, BeginInvoke, EndInvoke:

Рассмотрим ситуацию, когда управление бизнес-логикой приложения осуществляется в визуальном интерфейсе, работающем в потоке, отличном от потока, в котором работает бизнес-логика. Какой недостаток можно отметить в организации взаимодействия управляющего и управляемого процесса, основанного на взаимных ссылках?

Как связать метод, определяющий задачу, с потоком из пула?

Для вычисления суммы элементов массива можно использовать:

Укажите достоинства работы с пулом потоков:

Какие методы имеет класс Task?

Укажите высказывания, истинные для параллельного алгоритма вычисления определенного интеграла:

Какие утверждения являются справедливыми в ситуации, когда управление бизнес-логикой приложения осуществляется в визуальном интерфейсе, работающем в потоке, отличном от потока, в котором работает бизнес-логика?

Под параллельными вычислениями в данном курсе понимается параллельное выполнение:

Метод For класса Parallel является:

Что можно передать в качестве фактического аргумента конструктору класса Thread с одним аргументом?

Какие утверждения справедливы для класса SemaphoreSlim?

Каково назначение оператора lock?

Какие утверждения правильно описывают семантику выполнения метода Parallel.For:

Укажите истинные высказывания:

Клинч возникает, если:

Какой из операторов может встречаться только в итерации цикла Parallel.For, но не в обычном for?

В момент создания объекта класса Thread конструктору класса передается метод. Что можно сказать о сигнатуре этого метода?

Укажите высказывания, истинные для процессов ОС:

Разбиение исходной задачи на подзадачи меньшей размерности:

Объект класса ThreadingPool – это:

Какие утверждения справедливы по отношению к интерфейсу, задаваемому двумя типами проектов – консольным приложением и приложением Windows.Forms:

Какое соотношение имеет место для временных характеристик?

Какие методы есть в классе Thread, позволяющие потоку приостановить выполнение:

Какие высказывания являются истинными по отношению к методу Wait из класса Monitor?

Что понимается под гонкой данных (гонкой условий):

Укажите истинные высказывания:

Какие переходы из одного состояния в другое возможны для потоков?

Под управляемыми параметрами понимаются:

Если полагать, что единственным общим ресурсом является оперативная память, то какие проблемы характерны для параллельных вычислений, выполняемых на системах с общей памятью:

Если полагать, что единственным общим ресурсом является оперативная память, то что понимается под гонкой данных?

Векторные процессоры согласно классификации Флинна относятся к классу:

Из закона Амдаля следует:

Отметьте высказывания, истинные для потоков и процессов:

Укажите высказывания, истинные для алгоритма сортировки "чет-нечет":

Сколько классов содержится в пространстве имен Threading?

Что понимается под общими ресурсами потоков, участвующими в гонке:

Укажите высказывания, истинные для класса ReaderWriterLockSlim:

Класс ThreadingPool - это:

Какие утверждения справедливы относительно параметров метода QueueUserWorkItem?

Какие утверждения справедливы относительно классов Task и Task<TResult>:

Укажите истинные высказывания:

Что происходит при замене обычного цикла for на его аналог Parallel.For?

Какие методы есть у класса Parallel?

Тело цикла Parallel.For:

Отметьте высказывания, истинные по отношению к методу Parallel.For:

Какие высказывания справедливы по отношению к методу Parallel.Invoke?

При разработке бизнес-логики приложения какой тип проекта, скорее всего, следует предпочесть?

Какие утверждения справедливы относительно метода Invoke, вызываемого при работе с элементами управления?

Какими свойствами обладают объекты класса Thread?

Какая информация содержится в контексте потока?

Укажите истинные высказывания, связанные с управлением памятью:

Графические процессоры согласно классификации Флинна относятся к классу:

Какие переходы из одного состояния в другое невозможны для потоков?

Приложение представляет модель взаимодействия управляющего и управляемого процессов. Это взаимодействие может быть основано на механизме:

Какие утверждения справедливы по отношению к классу Monitor?

Для того, чтобы корректно работать с элементами управления, созданными в другом потоке, можно использовать следующие методы:

Какие утверждения справедливы относительно блокировки, осуществляемой оператором lock?

Операционная система создает процесс для каждого:

Что такое суперкомпьютер?

Укажите высказывания, истинные для потоков:

Рассмотрим цикл for(int i =0; i <N; i++ ) { x[i] = expr; } с одним оператором присваивания в теле цикла. Цикл допускает распараллеливание, если выражение expr представимо в виде:

Цикл не допускает распараллеливания, если:

Какой формулой задается сложность шагового алгоритма пузырьковой сортировки?

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

Что происходит, когда поток завершает выполнение метода?

Какие свойства имеет класс Task?

Какие из следующих высказываний справедливы по отношению к распараллеливанию цикла while:

Какие утверждения справедливы по отношению исключений, выбрасываемых на итерациях циклов Parallel.For и Parallel.ForEach:

В многопоточном приложении элементы управления визуального графического интерфейса, созданные в одном потоке:

Укажите истинные высказывания, связанные с вычислением суммы элементов массива:

Как справиться с ситуацией клинча?

При распараллеливании цикла:

Каким отношением связаны классы Task и Task<TResult>?

Последовательный алгоритм умножения матриц C = A * B содержит три цикла – цикл по строкам матрицы A, по столбцам матрицы В, внутренний цикл, вычисляющий скалярное произведение строки на столбец. У каких циклов итерации независимы?

При выполнении программы встретилось корректное объявление: Thread thread_one = new Thread(My_method); Что происходит в результате объявления?

Что может делать программист при работе с пулом потоков?

TPL (Task Parallel Library) – библиотека параллельных задач – это библиотека:

При распараллеливании цикла сложно:

Какие утверждения являются истинными по отношению к пулу потоков?

Укажите истинные высказывания:

Работая в цикле, Поток_1 выполняет код: N = rnd.Next(0,2), а Поток_2 выполняет параллельно код: if(N > 0) Sum = 1000 else Sum = 0; (Переменные объявлены надлежащим образом, блокировки не предусмотрены) Какие результаты гарантируются?

Какие утверждения справедливы по отношению к взаимодействию двух частей приложения – интерфейса и бизнес-логики?

Параллельные версии алгоритмов пузырьковой сортировки и быстрой сортировки, представленные в этой главе, реализованы по-разному. Какие утверждения являются истинными?