Служба уведомлений

Служба предназначена для работы с уведомлениями о событиях, связанных с ресурсами.

Сведения о методах службы приведены в таблице ниже.

Методы службы notice.Notice (интерфейс kl.core.Notice)

Метод

Назначение и параметры метода

Потенциальная опасность метода

Create

Назначение

Создает приемник уведомлений.

Параметры

  • [out] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [out] rc – код возврата.

Позволяет исчерпать память ядра, создавая в ней множество объектов.

SubscribeToObject

Назначение

Добавляет запись вида "ресурс – маска событий" в приемник уведомлений, чтобы он получал уведомления о событиях, которые связаны с заданным ресурсом и соответствуют заданной маске событий.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [in] object – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует ресурс.
  • [in] evMask – маска событий.
  • [in] evId – идентификатор записи вида "ресурс – маска событий".
  • [in] flags – флаги, задающие параметры для записи вида "ресурс – маска событий".
  • [out] rc – код возврата.

Позволяет исчерпать память ядра, создавая в ней множество объектов.

UnsubscribeFromEvent

Назначение

Удаляет записи вида "ресурс – маска событий" с заданным идентификатором из приемника уведомлений, чтобы он не получал уведомления о событиях, соответствующих этим записям.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [in] evId – идентификатор записей вида "ресурс – маска событий".
  • [in] object – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует ресурс. Если ресурс задан, то метод удаляет записи вида "ресурс – маска событий", которые имеют заданный в параметре evId идентификатор и соответствуют этому ресурсу.
  • [out] rc – код возврата.

Нет.

UnsubscribeFromObject

Назначение

Удаляет записи вида "ресурс – маска событий", соответствующие заданному ресурсу, из приемника уведомлений, чтобы он не получал уведомления о событиях, соответствующих этим записям.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [in] object – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует ресурс.
  • [in] flags – флаги, задающие, какие записи вида "ресурс – маска событий" нужно удалить.
  • [out] rc – код возврата.

Нет.

GetEvent

Назначение

Извлекает уведомления из приемника.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [in] mdelay – время ожидания появления уведомлений в приемнике в миллисекундах.
  • [out] events – последовательность уведомлений, которые представляют собой структуры, содержащие идентификатор записи вида "ресурс – маска событий", маску и счетчик событий, связанных с ресурсом.
  • [out] rc – код возврата.

Нет.

DropAndWake

Назначение

Возобновляет исполнение всех потоков, ожидающих появления уведомлений в приемнике, и в зависимости от параметра flags выполняет дополнительные действия:

  • Запрещает извлечение уведомлений из приемника.
  • Задает способ, которым отменяется запрет на извлечение уведомлений из приемника.
  • Удаляет из приемника все записи вида "ресурс – маска событий" и уже полученные уведомления.
  • Делает приемник уведомлений недоступным для использования.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [in] flags – флаги, задающие дополнительные действия.
  • [out] rc – код возврата.

Нет.

SetObjectEvent

Назначение

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

Параметры

  • [in] object – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует пользовательский ресурс.
  • [in] evMask – маска событий, о которых требуется сигнализировать.
  • [out] rc – код возврата.

Нет.

EditSubscriptionForEvent

Назначение

Изменяет в приемнике уведомлений записи вида "ресурс – маска событий" с заданным идентификатором.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [in] evId – идентификатор записей вида "ресурс – маска событий", которые нужно изменить.
  • [in] object – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует ресурс. Если ресурс задан, то метод изменяет записи вида "ресурс – маска событий", которые имеют заданный в параметре evId идентификатор и соответствуют этому ресурсу.
  • [in] newId – новый идентификатор записей вида "ресурс – маска событий".
  • [in] newMask – новая маска событий.
  • [out] rc – код возврата.

Нет.

EditSubscriptionForObject

Назначение

Изменяет в приемнике уведомлений записи вида "ресурс – маска событий", которые соответствуют заданному ресурсу.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [in] object – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует ресурс.
  • [in] flags – флаги, задающие, какие записи вида "ресурс – маска событий" нужно изменить.
  • [in] newId – новый идентификатор записей вида "ресурс – маска событий".
  • [in] newMask – новая маска событий.
  • [out] rc – код возврата.

Нет.

Resume

Назначение

Отменяет запрет на извлечение уведомлений из приемника, установленный методом DropAndWake.

Параметры

  • [in] notify – значение, двоичное представление которого состоит из нескольких полей, включая поле дескриптора и поле маски прав дескриптора. Дескриптор идентифицирует приемник уведомлений.
  • [out] rc – код возврата.

Нет.

В начало