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