Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodichka_Po_Tp.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.44 Mб
Скачать

Задания к лабораторной работе

Задание 1. Создать апплеты PanelsDemo1, PanelsDemo2 и WindowsDemo и объяснить их работу. Первые два апплета должны иметь возможность работать как независимые приложения.

Задание 2. Дать ответы на контрольные вопросы

Контрольные вопросы

  1. Что такое контейнеры? Какие два основных вида контейнеров cуществует?

  2. Какие существуют типы контейнеров?

  3. Для чего чаще всего используются панели?

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

  5. Как происходит обработка события компонентами контейнера?

  6. Какова иерархия обработки события различными компонентами контейнера?

  7. В чем основное отличие окон и панелей?

  8. Что является обязательным параметром конструктора при создании экземпляра класса окон?

  9. Каковы отличительные особенности имеют фреймы?

  10. Какие методы должны быть переопределены в новом подклассе фреймов?

  11. Какой класс контейнеров автоматически поддерживает работу с меню? Почему он это делает автоматически?

  12. Как добавить меню в контейнер?

  13. Как создать новое меню и добавить в него элементы?

  14. Какие существуют классы элементов меню?

  15. Какими методами обрабатываются события меню?

  16. Для чего в основном используются окна диалогов?

  17. Каковы важные отличия окон диалогов от фреймов?

  18. Объект какого класса должен обязательно быть родителем диалогового окна?

  19. Как создать диалог своего класса?

  20. Для чего предназначены менеджеры компоновки? Какие существуют режимы размещения?

ЛАБОРАТОРНАЯ РАБОТА № 6.

МНОГОПОТОКОВЫЕ ПРИЛОЖЕНИЯ (2 часа)

Методические указания к лабораторной работе

При создании приложений для операционной системы Microsoft Windows с использованием программного интерфейса Win API операционной системы можно решать многие такие задачи, как анимация или работа в сети, и без использования многозадачности (без создания подзадач главной задачи). Например, для анимации можно обрабатывать сообщения соответствующим образом настроенного таймера.

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

Прежде чем начать рассматривать процесс реализации мультизадачности, уточним некоторые термины.

1. Процессы, задачи и приоритеты

Обычно в мультизадачной операционной системе выделяют такие объекты, как процессы и задачи. Между этими понятиями существует большая разница, которую следует четко представлять.

Процесс (задача)

Процесс (process) - это объект, который создается операционной системой, когда пользователь запускает приложение. Процессу выделяется отдельное адресное пространство, причем это пространство физически недоступно для других процессов. Процесс может работать с файлами или с каналами связи локальной или глобальной сети.

Поток (нить)

Для каждого процесса операционная система создает одну главный поток (thread), который является потоком выполняющихся по очереди команд центрального процессора. При необходимости главный поток может создавать другие потоки, пользуясь для этого программным интерфейсом операционной системы.

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

Приоритеты потоков

Если процесс создал несколько потоков, то все они выполняются параллельно, причем время центрального процессора (или нескольких центральных процессоров в мульпроцессорных системах) распределяется между этими потоками.

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

Следует особо отметить, что распределение времени выполняется для потоков, а не

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]