Contents

CFMachPort

Declaration

class CFMachPort

Overview

A CFMachPort object is a wrapper for a native Mach port (mach_port_t). Mach ports are the native communication channel for the macOS kernel.

CFMachPort does not provide a function to send messages, so you primarily use a CFMachPort object if you need to listen to a Mach port that you obtained by other means. You can get a callback when a message arrives on the port or when the port becomes invalid, such as when the native port dies.

To listen for messages you need to create a run loop source with CFMachPortCreateRunLoopSource(_:_:_:) and add it to a run loop with CFRunLoopAddSource(_:_:_:).

To send data, you must use the Mach APIs with the native Mach port, which is not described here. Alternatively, you can use a CFMessagePort object, which can send arbitrary data.

Mach ports only support communication on the local machine. For network communication, you have to use a CFSocket object.

Topics

Creating a CFMachPort Object

Configuring a CFMachPort Object

Examining a CFMachPort Object

Getting the CFMachPort Type ID

Callbacks

Data Types

See Also

Opaque Types