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

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

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

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

Метод

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

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

Create

Назначение

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

Параметры

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

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

SubscribeToObject

Назначение

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

Параметры

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

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

UnsubscribeFromEvent

Назначение

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

Параметры

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

Нет.

UnsubscribeFromObject

Назначение

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

Параметры

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

Нет.

GetEvent

Назначение

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

Параметры

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

Нет.

DropAndWake

Назначение

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

Параметры

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

Нет.

SetObjectEvent

Назначение

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

Параметры

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

Нет.

В начало