Объекты задач

Объекты задач

Процессы можно объединять в объекты задач (job objects), что позволяет управлять процессами как группой, устанавливать лимиты ресурсов для всех процессов, входящих в объект задачи, и вести учетную информацию. Объекты задач были впервые введены в Windows 2000 и теперь поддерживаются во всех системах NT5.

Первым шагом является создание пустого объекта задачи с помощью функции CreateObject, которая принимает два аргумента, имя и атрибуты защиты, и возвращает дескриптор объекта задачи. Существует также функция OpenJobObject, которую можно применять к именованным объектам задач. Для уничтожения объектов используется функция CloseHandle.

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

По умолчанию новый дочерний процесс, созданный функцией CreateProcess, также принадлежит задаче, если только в аргументе dwCreationFlags при вызове функции CreateProcess не был задан флаг CREATE_BREAKWAY_FROM_JOB. В предусмотренном по умолчанию случае попытки назначения дочернего процесса задаче при помощи функции AssignProcessToJobObject приводят к ее сбойному завершению. 

Наконец, для установления управляющих лимитов процессов, входящих в задачу, используется функция SetInformationJobObject. 

BOOL SetInformationJobObject(HANDLE hJob, JOBOBJECTINFOCLASS JobObjectInformationClass, LPVOID lpJobObjectInformation, DWORD cbJobObjectInformationLength)

• hJob — дескриптор существующего объекта задачи.

• JobObjectInformationClass — указывает информационный класс устанавливаемых ограничений. Всего существует пять возможных значений; одним из них является значение JobObjectBasicLimitInformation, используемое для указания такой информации, как ограничения общего времени и времени, приходящегося на один процесс, ограничения размеров рабочего набора (working set)[26], ограничения на количество активных процессов, приоритет и родство процессоров (в SMP-системах родственными называются процессоры, которые могут использоваться потоками в процессах задач).

• lpJobObjectInformation — указывает на фактическую информацию, необходимую для предыдущего параметра. Для каждого информационного класса существует своя структура.

• JOBOBJECT_BASIC_ACCOUNTING_INFORMATION — позволяет получить суммарные временные характеристики (пользовательское, системное и истекшее время) процессов, входящих в задачу.

• Значением последнего параметра является размер предыдущей структуры.

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Панель задач

Из книги Работа на ноутбуке автора Садовский Алексей

Панель задач Панель задач по умолчанию располагается в нижней части экрана (см. рис. 10.1).Условно ее можно разделить на три части (слева направо):• кнопка меню Пуск;• панель быстрого запуска;• область уведомлений.Когда вы запускаете какую-либо программу, в центральной


Панель задач

Из книги Собираем компьютер своими руками автора Ватаманюк Александр Иванович

Панель задач Как и в более ранних версиях, в Windows Vista имеется возможность настройки Панели задач.Перейдите на вкладку Панель задач (рис. 7.22). Рис. 7.22. Настройка Панели задачЗдесь есть возможность активировать следующие параметры.• Закрепить панель задач. Иногда в


Объекты DataSet с множеством таблиц и объекты DataRelation

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Объекты DataSet с множеством таблиц и объекты DataRelation До этого момента во всех примерах данной главы объекты DataSet содержали по одному объекту DataTable. Однако вся мощь несвязного уровня ADO.NET проявляется тогда, когда DataSet содержит множество объектов DataTable. В этом случае вы можете


Панель задач

Из книги Windows Vista без напряга автора Жвалевский Андрей Валентинович

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


Планирование задач

Из книги Office 2007. Мультимедийный курс автора Мединов Олег

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


Вид Панели задач

Из книги Windows Vista автора Вавилов Сергей

Вид Панели задач Настроить вид Панели задач можно на одноименной вкладке окна Свойства панели задач и меню «Пуск» (рис. 2.17). Чтобы открыть его, щелкните правой кнопкой мыши на свободном участке Панели задач и выполните команду Свойства. Настройки, отвечающие за вид Панели


Объекты OS/400 и системные объекты MI

Из книги Основы AS/400 автора Солтис Фрэнк

Объекты OS/400 и системные объекты MI Несколько типов объектов имеются и в OS/400, и в MI. Типы объектов OS/400 перечислены в таблице 5.1. Для сравнения, в таблице 5.2 приведены системные объекты MI. Помните, что в каждой новой версии AS/400 добавляются новые функции и даже новые объекты.


Панель задач

Из книги Установка и настройка Windows XP. Легкий старт автора Донцов Дмитрий

Панель задач Установим Часы на Панели задач. Переместив указатель мыши вниз экрана, на Панель задач, щелкаем на ней правой кнопкой мыши и выбираем в контекстном меню пункт Свойства. Оказываемся в окне Свойства панели задач и меню «Пуск» (рис. 3.1). Рис. 3.1. Свойства Панели


Автоматизация задач

Из книги 500 лучших программ для Windows автора Уваров Сергей Сергеевич

Автоматизация задач Большое количество различных операций, выполняемых на компьютере, можно автоматизировать. Обычной функцией программ стало завершение текущей операции с последующим выключением компьютера. Сегодня существует класс подобных утилит и с расширенными


Диспетчер задач

Из книги Программирование КПК и смартфонов на .NET Compact Framework автора Климов Александр П.

Диспетчер задач Но мы с вами не расстаемся с программами, написанными Кристианом Форсбергом. На его сайте можно найти еще одну полезную программу, необходимую как разработчику, так и пользователю. Это Диспетчер задач (Task Manager). Программа подобного рода тоже отсутствует в


Панель задач

Из книги Первые шаги с Windows 7. Руководство для начинающих автора Колисниченко Денис Н.

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


3.4. Панель задач

Из книги Linux глазами хакера автора Флёнов Михаил Евгеньевич

3.4. Панель задач Панель задач отображает открытые окна и позволяет переключаться между ними. Сейчас мы поговорим о настройке панели задач, чтобы сделать это самое переключение максимально комфортным. Щелкните правой кнопкой мыши на панели задач и выберите команду


3.5. Планирование задач

Из книги Установка, настройка и восстановление Windows 7 на 100% автора Ватаманюк Александр Иванович

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


3.5.2. Планировщик задач

Из книги Идеальный программист. Как стать профессионалом разработки ПО автора Мартин Роберт С.

3.5.2. Планировщик задач Команда at достаточно проста и удобна, но ее задания выполняются однократно, а многие задачи администратора (то же резервное копирование) требуют многократного запуска. Допустим, что вы запланировали резервное копирование ежедневно в 10 часов вечера.


8.1. Панель задач

Из книги автора

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


Отслеживание задач

Из книги автора

Отслеживание задач Сейчас я использую Pivotal Tracker. Эта система проста и элегантна, она хорошо интегрируется с гибкими/итеративными методологиями и позволяет всем заинтересованным сторонам и разработчикам быстро общаться друг с другом. Я очень доволен ей.В очень мелких