
3. Отчет о работе
Должен быть представлен в виде текстов разработанных в п.4 и п.6 приложений, письменного ответа на вопросы:
В чем состоит отличие поведения разработанных приложений, использующих для доступа потоков к критическим участкам мьютексы, критические секции, семафоры и события при досрочном завершении одного из потоков?
В чем причина отличий?
Достоинства и недостатки трех способов ожидания завершения работы потоков Thrh1 иThrh2.
Нарисовать модель Холта для приложения, реализованного в п.6.
4. Контрольные вопросы
В чем состоит отличие критического участка от критической секции?
Синхронизация потоков с помощью критических секций.
Синхронизация потоков с помощью мьютексов.
Синхронизация потоков с помощью семафоров.
Синхронизация потоков с помощью событий.
В чем состоит отличие поведения разработанных приложений, использующих для доступа потоков к критическим участкам мьютексы, критические секции, семафоры и события?
Что такое тупик? Условия возникновения тупика. Как ведут себя потоки в состоянии тупика? Выделяются ли кванты процессорного времени попавшим в тупик потокам и почему? Почему нежелательно попадание потоков в тупик?
Как проявлялись последствия тупика потоков приложения? Всегда ли потоки при неизменных значениях параметров T1 – T4 оказывались в тупике?
Использование каких средств синхронизации может приводить к тупику?
Функции Win32, использованные при выполнении работы.
Эквивалентны ли второй и третий способы ожидания завершения работы потоков Thrh1 и Thrh2?
Средства распознавания тупиков, реализованные в последних операционных системах фирмы Microsoft. Имеются ли подобные средства в каких-либо других общедоступных операционных системах? Рекомендуется заглянуть в Интернет.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
MSDN Library, раздел Platform SDK.
Win32 SDK. Help - файл Delphi.
Рихтер Дж. Windows для профессионалов. 4-е изд. – СПб: Питер, 2001.- 752 с.
Рихтер Дж., Назар К. Windows via C/C++. Программирование на языке Visual C++.- СПб.: Питер, 2008. - 896 с.