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



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


Любой процесс содержит хотя бы один поток. Каждый процесс 16-разрядного Windows-приложения или программы MS-DOS имеет только один поток, тогда как процессы 32-разрядных Windows-приложений могут включать их несколько.

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

> Изучение работы потоков

  1. Завершите все работающие программы.
  2. В меню Start выберите пункты Programs, Accessories, System Tools, System Monitor.

    Будет запущен System Monitor.

  3. В меню Edit щелкните команду Remove Item.
  4. Выделите все ранее добавленные элементы и щелкните ОК.

    График очистится.

  5. В меню View щелкните Numeric Charts.
  6. В меню Edit щелкните Add Item.
  7. Из списка Category выберите пункт Kernel, из списка Item выберите пункт Threads, а затем щелкните кнопку ОК.

    Сколько потоков активно?

    ответ

  8. В меню Start выберите пункты Programs, Accessories, WordPad.
  9. Переключитесь на System Monitor.

    Сколько потоков активно?



    ответ

  10. На панели инструментов WordPad щелкните кнопку Open.
  11. Переключитесь в окно System Monitor и несколько секунд понаблюдайте за окном KerneL:Threads.

    Сколько потоков активно?

    ответ

  12. Закройте диалоговое окно Open приложения WordPad и завершите работу с ним.
  13. Переключитесь в окно System Monitor.

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

  14. В меню Start выберите Programs, MS-DOS Prompt.
  15. Переключитесь в окно System Monitor.

    Сколько потоков активно?

    ответ

Почему окно MS-DOS породило два потока?

> Изучение работы многопоточного приложения

  1. Из папки WA\Practice\Ch01 запустите демонстрационную многопоточную про грамму Winbezmt.exe.
  2. Переключитесь в окно System Monitor.

    Сколько потоков активно?

    ответ

  3. Переключитесь на многопоточную демонстрационную программу.
  4. В меню Bezier выберите Add Thread (или нажмите клавиши CTRL+T).
  5. Переключитесь в окно System Monitor.

    Сколько потоков активно?

    ответ

  6. Добавьте еще два потока. Сколько теперь активных потоков?
  7. Завершите работу со всеми программами, включая System Monitor.



Содержание раздела