NSXPCConnection
NSXPCConnection класс обеспечивает реверсивный канал передачи между двумя процессами.
Этот класс является основными средними значениями создания и конфигурирования механизма связи между двумя процессами. Каждый процесс имеет один экземпляр этого класса для представления конечной точки в канале передачи.
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSObjectProtocol -
NSXPCProxyCreating -
Печатаемый -
NSObject -
NSXPCProxyCreating
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.8 и позже.
-
Инициализирует
NSXPCConnectionвозразите для соединения сNSXPCListenerобъект в другом процессе, идентифицированномNSXPCListenerEndpointобъект.Объявление
Swift
init(listenerEndpointendpoint: NSXPCListenerEndpoint)Objective C
- (instancetype)initWithListenerEndpoint:(NSXPCListenerEndpoint *)endpointПараметры
endpointЖелаемая конечная точка слушателя для службы.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Инициализирует
NSXPCConnectionвозразите для соединения с LaunchAgent или LaunchDaemon с именем, распространенным в alaunchd.plist.Объявление
Swift
init(machServiceNamename: String, optionsoptions: NSXPCConnectionOptions)Objective C
- (instancetype)initWithMachServiceName:(NSString *)nameoptions:(NSXPCConnectionOptions)optionsОбсуждение
Например, если с агентом управляют
launchdи имеет alaunchd.plistв~/Library/LaunchAgents, этот метод создал бы соединение с тем агентом. Агент должен использоватьNSXPCListenerожидать новых соединений.Если соединение делается к процессу, работающему в привилегированном контексте начальной загрузки Маха (например, демон, запущенный a
launchdсписок свойств в/Library/LaunchDaemons), затем передайтеNSXPCConnectionPrivilegedопция.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Инициализирует
NSXPCConnectionвозразите для соединения сNSXPCListenerобъект в службе XPC, идентифицированной именем службы.Объявление
Swift
init(serviceNameserviceName: String)Objective C
- (instancetype)initWithServiceName:(NSString *)serviceNameОбсуждение
Службы XPC являются процессами помощника, которые обычно являются частью Вашего комплекта приложений. Служба должна использовать
NSXPCListenerожидать новых соединений.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Лишает законной силы соединение.
Объявление
Swift
func invalidate()Objective C
- (void)invalidateОбсуждение
Когда Вы вызываете этот метод, все выдающиеся блоки ответа, блоки обработки ошибок, и блоки аннулирования вызывают на очереди обработки сообщений. Соединение должно быть лишено законной силы, прежде чем оно будет освобождено. После того, как соединение лишено законной силы, больше сообщений не может быть отправлено или получено.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Возвращает прокси для удаленного объекта (т.е.
exportedObjectс другой стороны этого соединения).Объявление
Swift
var remoteObjectProxy: AnyObject { get }Objective C
@property(readonly, retain) id remoteObjectProxyОбсуждение
См. описания в
NSXPCProxyCreatingдля большего количества подробных данных.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Возвращает прокси для удаленного объекта (т.е. объект, экспортируемый с другой стороны этого соединения) с указанным обработчиком ошибок.
Объявление
Swift
func remoteObjectProxyWithErrorHandler(_handler: (NSError!) -> Void) -> AnyObjectObjective C
- (id)remoteObjectProxyWithErrorHandler:(void (^)(NSError *error))handlerОбсуждение
См. описания в
NSXPCProxyCreatingдля большего количества подробных данных.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Запускает или продолжает обрабатывать сообщений на соединении.
Объявление
Swift
func resume()Objective C
- (void)resumeОбсуждение
Все соединения запускаются приостановленный. Необходимо возобновить их, прежде чем они начнут обрабатывать полученные сообщения или отправлять сообщения через
remoteObjectProxyобъект.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Приостанавливает соединение.
Объявление
Swift
func suspend()Objective C
- (void)suspendОбсуждение
Приостанавливает и резюме должны быть сбалансированы, прежде чем соединение может быть лишено законной силы.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
serviceName serviceNameСвойствоИмя службы XPC, с которой это соединение было сконфигурировано для соединения. (только для чтения)
Объявление
Swift
var serviceName: String? { get }Objective C
@property(readonly, copy) NSString *serviceNameОператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Определяет
NSXPCInterfaceобъект, описывающий протокол для объекта, представленногоremoteObjectProxy.Объявление
Swift
var remoteObjectInterface: NSXPCInterface?Objective C
@property(retain) NSXPCInterface *remoteObjectInterfaceОбсуждение
Прокси представляет
exportedObjectнаNSXPCConnectionв другом процессе.Если сообщения отправляются по этому соединению, это значение требуется.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
processIdentifier processIdentifierСвойствоПроцесс ID (PID) соединительного процесса. (только для чтения)
Объявление
Swift
var processIdentifier: pid_t { get }Objective C
@property(readonly) pid_t processIdentifierОбсуждение
Этот атрибут может использоваться делегатом слушателя, чтобы принять или отклонить соединения.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
invalidationHandler invalidationHandlerСвойствоОбработчик аннулирования, который вызывают, если соединение не может быть сформировано или соединение, завершился и не может быть восстановлен.
Объявление
Swift
var invalidationHandler: (() -> Void)?Objective C
@property(copy) void (^invalidationHandler)(void)Обсуждение
Этот обработчик вызывается на ту же очередь как ответные сообщения и другие обработчики, и всегда выполняется в последний раз (после обработчика прерывания, при необходимости). Вы не можете отправить сообщения по соединению из блока обработчика аннулирования.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
interruptionHandler interruptionHandlerСвойствоОбработчик прерывания, который вызывают если удаленные выходы процесса или катастрофические отказы.
Объявление
Swift
var interruptionHandler: (() -> Void)?Objective C
@property(copy) void (^interruptionHandler)(void)Обсуждение
Может быть возможно восстановить соединение путем простой отправки другого сообщения. Обработчик вызывается на ту же очередь как ответные сообщения и другие обработчики, и это всегда выполняется после любых других сообщений или блочных обработчиков ответа (за исключением обработчика аннулирования).
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
exportedObject exportedObjectСвойствоЭкспортируемый объект для соединения.
Объявление
Swift
var exportedObject: AnyObject?Objective C
@property(retain) id exportedObjectОбсуждение
Сообщения отправили к
remoteObjectProxyобъект с другой стороны соединения диспетчеризируется этому объекту. Сообщения, переданные к экспортируемым объектам, сериализируются и отправляются на неосновной очереди. Получатель ответственен за обработку сообщений на различной очереди или потоке, если это требуется.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
exportedInterface exportedInterfaceСвойствоNSXPCInterfaceобъект, описывающий протокол для экспортируемого объекта на этом соединении.Объявление
Swift
var exportedInterface: NSXPCInterface?Objective C
@property(retain) NSXPCInterface *exportedInterfaceОбсуждение
Если экспортируемый объект установлен, это значение требуется.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
конечная точка конечная точкаСвойствоЕсли соединение создавалось с
NSXPCListenerEndpointобъект, возвращает используемый объект конечной точки. (только для чтения)Объявление
Swift
var endpoint: NSXPCListenerEndpoint { get }Objective C
@property(readonly, retain) NSXPCListenerEndpoint *endpointОператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Эффективный идентификатор пользователя (EUID) соединительного процесса. (только для чтения)
Объявление
Swift
var effectiveUserIdentifier: uid_t { get }Objective C
@property(readonly) uid_t effectiveUserIdentifierОбсуждение
Этот атрибут может использоваться делегатом слушателя, чтобы принять или отклонить соединения.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Эффективная группа ID (EGID) соединительного процесса. (только для чтения)
Объявление
Swift
var effectiveGroupIdentifier: gid_t { get }Objective C
@property(readonly) gid_t effectiveGroupIdentifierОбсуждение
Этот атрибут может использоваться делегатом слушателя, чтобы принять или отклонить соединения.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
BSM контролируют идентификатор сеанса для соединительного процесса. (только для чтения)
Объявление
Swift
var auditSessionIdentifier: au_asid_t { get }Objective C
@property(readonly) au_asid_t auditSessionIdentifierОбсуждение
Этот атрибут может использоваться делегатом слушателя, чтобы принять или отклонить соединения.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
Опции, которые можно передать соединению.
Объявление
Swift
struct NSXPCConnectionOptions : RawOptionSetType { init(_rawValue: UInt) init(rawValuerawValue: UInt) static var Privileged: NSXPCConnectionOptions { get } }Objective C
enum { NSXPCConnectionPrivileged = (1 << 12UL ) }; typedef NSUInteger NSXPCConnectionOptions;Константы
-
PrivilegedNSXPCConnectionPrivilegedИспользуйте эту опцию при соединении со службой в привилегированной начальной загрузке Маха (например, демон с a
launchd.plistв/Library/LaunchDaemons).Доступный в OS X v10.8 и позже.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.8 и позже.
-
