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

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

Разработчик

Ссылка платформы основы ссылка класса NSPortMessage

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

На этой странице
Язык:

NSPortMessage

NSPortMessage определяет низкий уровень, независимый от операционной системы тип для межприложения (и межпоток) сообщения. Сообщения порта используются прежде всего распределенной системой объектов. Необходимо реализовать межсвязь приложений с помощью распределенных объектов каждый раз, когда возможный и использование NSPortMessage только при необходимости.

NSPortMessage объект имеет три главных части: отправление и получает порты, которые являются NSPort возразите, что соединяют отправителя сообщения к получателю и компоненты, формирующие организацию сообщения. Компоненты сохранены как NSArray объектный содержащий NSData и NSPort объекты. NSPortMessage sendBeforeDate: сообщение отсылает компоненты через отправить порт; любые ответы на сообщение наступают в получить порт. Посмотрите NSPort спецификация класса для получения информации об обработке входящих сообщений.

NSPortMessage экземпляр может быть инициализирован с парой NSPort объекты и массив компонентов. Организация сообщения порта может содержать только NSPort объекты или NSData объекты. В распределенной системе объектов обычно кодируются массивы байта/символа NSInvocation объекты, передающиеся от прокси до соответствующего реального объекта.

NSPortMessage объект также поддерживает идентификатор сообщения, который может использоваться для указания класса сообщения, такого как вызов метода Objective C, запрос на установление соединения, ошибка, и т.д. Используйте setMsgid: и msgid методы для доступа к идентификатору.

Наследование


Соответствует


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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в OS X v10.0 и позже.
  • init (sendPort:receivePort:components:) - initWithSendPort:receivePort:components: Определяемый инициализатор

    Инициализирует недавно выделенный NSPortMessage объект отправить определенные данные на данном порту и к получателю отвечает на другом данном порту.

    Объявление

    Swift

    init(sendPort sendPort: NSPort, receivePort receivePort: NSPort, components components: [AnyObject])

    Objective C

    - (instancetype)initWithSendPort:(NSPort *)sendPort receivePort:(NSPort *)receivePort components:(NSArray *)components

    Параметры

    sendPort

    Порт, на котором отправляется сообщение.

    receivePort

    Порт, в который наступают ответы на сообщение.

    components

    Данные для отправки в сообщении. components должен содержать только NSData и NSPort объекты и содержание NSData объекты должны быть в сетевом порядке байтов.

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

    NSPortMessage объект, инициализированный для отправки components на sendPort и к получателю отвечает на receivePort.

    Обсуждение

    NSPortMessage объект, инициализированный с этим методом, имеет идентификатор сообщения 0.

    Это - определяемый инициализатор для NSPortMessage.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – setMsgid:

  • Попытки отправить сообщение прежде aDate, возврат YEStrue если успешный или NOfalse если работа испытывает таймаут.

    Объявление

    Swift

    func sendBeforeDate(_ aDate: NSDate) -> Bool

    Objective C

    - (BOOL)sendBeforeDate:(NSDate *)aDate

    Параметры

    aDate

    Момент, перед которым должно быть отправлено сообщение.

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

    YEStrue если работа успешна, иначе NOfalse (например, если работа испытывает таймаут).

    Обсуждение

    Если ошибка кроме времени происходит, этот метод мог бы повысить NSInvalidSendPortException, NSInvalidReceivePortException, или NSPortSendException, В зависимости от типа отправляют порт и тип ошибки.

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Возвращает компоненты данных получателя.

    Объявление

    Swift

    var components: [AnyObject] { get }

    Objective C

    @property(readonly, copy) NSArray *components

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

    Компоненты данных получателя. См. Описание Класса для получения дополнительной информации.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Для исходящего сообщения, возвращает порт, в который наступят ответы на получатель. Для входящего сообщения, возвращает порт, в который действительно поступал получатель.

    Объявление

    Swift

    var receivePort: NSPort? { get }

    Objective C

    @property(readonly, retain) NSPort *receivePort

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

    Для исходящего сообщения, порта, в который наступят ответы на получатель. Для входящего сообщения порт получатель действительно поступал в.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – sendPort

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

    Объявление

    Swift

    var sendPort: NSPort? { get }

    Objective C

    @property(readonly, retain) NSPort *sendPort

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

    Для исходящего сообщения порт получатель отправит себя через, когда это получит a sendBeforeDate: сообщение. Для входящего сообщения ответы порта на получатель должны быть отправлены через.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – receivePort

  • Устанавливает идентификатор для получателя.

    Объявление

    Swift

    var msgid: UInt32

    Objective C

    @property uint32_t msgid

    Параметры

    msgid

    Идентификатор для получателя.

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – msgid

  • Возвращает идентификатор для получателя.

    Объявление

    Swift

    var msgid: UInt32

    Objective C

    @property uint32_t msgid

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

    Идентификатор для получателя.

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – setMsgid: