osx man page for xpc

Query: xpc

OS: osx

Section: 3

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

xpc(3)							   BSD Library Functions Manual 						    xpc(3)

NAME
xpc -- a structured, asynchronous interprocess communication library
SYNOPSIS
#include <xpc/xpc.h>
DESCRIPTION
The XPC framework facilitates interprocess communication using structured messages. Messages are structured using property list style objects such as dictionaries, arrays, strings, integers and UUIDs. Out-of-line types such as file descriptors and shared memory regions are also sup- ported. The root object of each message is a dictionary. Messages are sent via connections created using xpc_connection_create(3) and xpc_connection_create_mach_service(3). XPC significantly leverages the on-demand process management features of launchd(8) to provide transparent process life-cycle management. As such, clients of the XPC framework have little to no responsibility for managing their corresponding service processes. Consequently, there is no facility in XPC to directly query the execution status of a service. XPC services are simply made available when they are needed, so clients needn't be concerned with remote process state. Dynamic service registrations (ala bootstrap_register(), bootstrap_create_service() and bootstrap_create_server()) are also purposefully dis- allowed. XPC's integration with launchd(8) also extends to being able to launch jobs on-demand with higher-level events than have been historically available. Using XPC and launchd together, jobs can be launched based on events in IOKit or the posting of BSD Notifications.
SEE ALSO
xpc_object(3), xpc_main(3), xpc_connection_create(3), xpc_connection_create_mach_service(3), xpc_dictionary_create(3), xpc_array_create(3), xpc_objects(3), xpc_events(3), xpc_abort(3), xpcproxy(8), notify(3), launchd(8) Darwin 1 July, 2011 Darwin
Related Man Pages
launch_activate_socket(3) - mojave
xpc_transaction_end(3) - mojave
xpcservice.plist(5) - mojave
xpc_set_event_stream_handler(3) - osx
xpc_transaction_begin(3) - osx
Similar Topics in the Unix Linux Community
Turba H3 (2.2.1) (Horde 3 branch)
Turba H3 (2.3-RC1) (Horde 3 branch)
Turba 2.3.1 (Horde 3 branch)
Launchd-owned processes unexpected behavior
Reading structured arguments