Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Дарвинское уведомление ссылка API

Опции
Развертывание Target:

На этой странице

Дарвинское уведомление ссылка API

Включенные заголовки

  • <sys/cdefs.h>

  • <stdint.h>

  • <mach/message.h>

  • <Availability.h>

  • <dispatch/dispatch.h>

Функции

  • Объявление

    Objective C

    uint32_t notify_cancel ( int token );

    Параметры

    token

    (ввод) маркер уведомления

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

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

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    uint32_t notify_check ( int token, int *check );

    Параметры

    token

    (ввод) маркер уведомления

    check

    (вывод) истина/ложное показание

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

    Проверьте, были ли отправлены какие-либо уведомления.

    Выходная проверка параметра установлена в 0 для лжи, 1 для истины. Состояние Returns. проверка установлена в истину, первый раз notify_check вызывают для маркера. Когда уведомления были отправлены для имени, связанного с маркером уведомления, набор последующих вызовов проверяет к истине. Эта подпрограмма независима от notify_post (). Т.е. проверка будет истиной, если приложение вызовет notify_post () для имени и затем вызовет notify_check () для маркера, связанного с тем именем.

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    uint32_t notify_get_state ( int token, uint64_t *state64 );

    Параметры

    token

    (ввод) маркер уведомления

    state64

    (выведите) 64-разрядное значение целого без знака

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

    Получите 64-разрядное целочисленное значение состояния.

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.5 и позже.

  • Объявление

    Objective C

    uint32_t notify_post ( const char *name );

    Обсуждение

    Отправьте уведомление для имени.

    Это - единственный вызов, требующийся для производителя уведомления. Состояние Returns.

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

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

    Объявление

    Objective C

    uint32_t notify_register_dispatch( const char *name, int *out_token, dispatch_queue_t queue, notify_handler_t handler) ;

    Параметры

    name

    (введите) имя уведомления.

    out_token

    (выведите) регистрационный маркер.

    queue

    (введите) очередь отгрузки, которой представлен Блок. Очередь отгрузки сохраняется уведомлять подсистемой, в то время как уведомление регистрируется и будет выпущено, когда отменяется уведомление.

    block

    (введите) Блок для вызова на очередь отгрузки в ответ на уведомление. Маркер уведомления передается Блоку как параметр так, чтобы вызываемый мог изменить состояние уведомления или отменить регистрацию.

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

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

  • Объявление

    Objective C

    uint32_t notify_register_check ( const char *name, int *out_token );

    Параметры

    name

    (ввод) имя уведомления

    out_token

    (вывод) регистрационный маркер

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

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

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

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

    Объявление

    Objective C

    uint32_t notify_register_dispatch ( const char *name, int *out_token, dispatch_queue_t queue, notify_handler_t handler );

    Параметры

    name

    (введите) имя уведомления.

    out_token

    (выведите) регистрационный маркер.

    queue

    (введите) очередь отгрузки, которой представлен Блок. Очередь отгрузки сохраняется уведомлять подсистемой, в то время как уведомление регистрируется и будет выпущено, когда отменяется уведомление.

    block

    (введите) Блок для вызова на очередь отгрузки в ответ на уведомление. Маркер уведомления передается Блоку как параметр так, чтобы вызываемый мог изменить состояние уведомления или отменить регистрацию.

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

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

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    uint32_t notify_register_mach_port ( const char *name, mach_port_t *notify_port, int flags, int *out_token );

    Параметры

    name

    (ввод) имя уведомления

    out_token

    (вывод) маркер уведомления

    notify_port

    (ввод/вывод) указатель на порт Маха

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

    Уведомление запроса сообщением Маха.

    Уведомления поставлены пустым сообщением, отправленным в порт Маха. По умолчанию новый порт выделяется, и указатель на него возвращается как значение «notify_port». Порт Маха, ранее возвращенный вызовом к этой подпрограмме, может использоваться для уведомлений, если указатель на тот порт передается в подпрограмме, и NOTIFY_REUSE установлен в параметре флагов. Служба уведомления должна быть в состоянии извлечь, отправляют права на порт.

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

    Уведомление имеет пустое тело сообщения. msgh_id поле в заголовке сообщения Маха будет иметь значение маркера уведомления. Если порт снова используется для многократной регистрации уведомления, значение msgh_id может использоваться для определения, какое имя генерировало уведомление.

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    uint32_t notify_register_signal ( const char *name, int sig, int *out_token );

    Параметры

    name

    (ввод) имя уведомления

    sig

    (входное) число сигнала (см. сигнал (3)),

    out_token

    (вывод) маркер уведомления

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

    Поставка уведомления запроса сигналом UNIX.

    Клиент может запросить сигнальное уведомление на многократные имена. После того, как сигнал поставлен, notify_check (), подпрограмму можно вызвать с каждым маркером уведомления для определения, какое имя (если таковые имеются) генерировало сигнальное уведомление.

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    uint32_t notify_resume ( int token );

    Параметры

    token

    (ввод) маркер уведомления

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

    Удаляет один уровень приостановки для маркера, ранее приостановленного вызовом к notify_suspend. Когда соответствующий вызов к notify_resume будет выполнен для каждого предыдущего вызова к notify_suspend, уведомления возобновят. Уведомления, отправленные, в то время как маркер приостановлен, объединяются в единственное уведомление, отправленное после возобновления.

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    uint32_t notify_set_state ( int token, uint64_t state64 );

    Параметры

    token

    (ввод) маркер уведомления

    state64

    (введите) 64-разрядное значение целого без знака

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

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

    Установите 64-разрядное целочисленное значение состояния.

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.5 и позже.

  • Объявление

    Objective C

    uint32_t notify_suspend ( int token );

    Параметры

    token

    (ввод) маркер уведомления

    Возвращаемое значение

    Состояние Returns.

    Обсуждение

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

    Оператор импорта

    Objective C

    #include <notify.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

Константы

Посмотрите раздел Overview выше для документации уровня заголовка.

  • Объявление

    Objective C

    #define NOTIFY_STATUS_FAILED 1000000 #define NOTIFY_STATUS_INVALID_FILE 4 #define NOTIFY_STATUS_INVALID_NAME 1 #define NOTIFY_STATUS_INVALID_PORT 3 #define NOTIFY_STATUS_INVALID_REQUEST 6 #define NOTIFY_STATUS_INVALID_SIGNAL 5 #define NOTIFY_STATUS_INVALID_TOKEN 2 #define NOTIFY_STATUS_NOT_AUTHORIZED 7 #define NOTIFY_STATUS_OK 0

    Константы

    • NOTIFY_STATUS_FAILED

      NOTIFY_STATUS_FAILED

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_INVALID_FILE

      NOTIFY_STATUS_INVALID_FILE

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_INVALID_NAME

      NOTIFY_STATUS_INVALID_NAME

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_INVALID_PORT

      NOTIFY_STATUS_INVALID_PORT

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_INVALID_REQUEST

      NOTIFY_STATUS_INVALID_REQUEST

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_INVALID_SIGNAL

      NOTIFY_STATUS_INVALID_SIGNAL

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_INVALID_TOKEN

      NOTIFY_STATUS_INVALID_TOKEN

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_NOT_AUTHORIZED

      NOTIFY_STATUS_NOT_AUTHORIZED

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    • NOTIFY_STATUS_OK

      NOTIFY_STATUS_OK

      Коды состояния, возвращенные API.

      Доступный в OS X v10.6 и позже.

    Обсуждение

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

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

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

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

    Уведомления могут быть объединены в некоторых случаях. Многократные события, отправленные для имени в быстрой последовательности, могут привести к единственному уведомлению, отправленному клиентам, зарегистрированным для уведомления для того имени. Клиенты, проверяющие на изменения с помощью notify_check (), подпрограмма не может определить, отправило ли больше чем одно первенство события начиная с предыдущего вызова на notify_check () для того имени.

    «Ложные положительные стороны» могут произойти в notify_check (), когда используется с маркером, сгенерированным notify_register_check () вследствие ограничений реализации. Это поведение может варьироваться по будущим выпускам.

    Синхронизация между двумя процессами может быть достигнута с помощью notify_set_state () и notify_get_state () подпрограммы.

  • Объявление

    Objective C

    #define NOTIFY_REUSE 0x00000001

    Константы

    • NOTIFY_REUSE

      NOTIFY_REUSE

      Флаговые биты используются для регистрации.

      Доступный в OS X v10.6 и позже.