<!--
{
  "documentType" : "article",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/distributed-objects-support",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Distributed Objects Support"
}
-->

# Distributed Objects Support

Enable communication among objects in different processes, both locally and on remote systems.

## Topics

### Legacy

[`NSMachPortDelegate`](/documentation/Foundation/NSMachPortDelegate)

An interface for handling incoming Mach messages.

[`NSConnectionDelegate`](/documentation/Foundation/NSConnectionDelegate)

An interface for interacting with low-level, interprocess connections.

[`NSConnection`](/documentation/Foundation/NSConnection)

An object that manages the communication between objects in different threads or between a thread and a process running on a local or remote system.

[`NSDistantObject`](/documentation/Foundation/NSDistantObject)

A proxy for objects in other applications or threads.

[`NSDistantObjectRequest`](/documentation/Foundation/NSDistantObjectRequest)

An object used by the distributed objects system to help handle invocations between different processes.

[`NSMachBootstrapServer`](/documentation/Foundation/NSMachBootstrapServer)

A port name server that takes and returns Mach port objects.

[`NSMachPort`](/documentation/Foundation/NSMachPort)

A port that can be used as an endpoint for distributed object connections (or raw messaging).

[`MessagePort`](/documentation/Foundation/MessagePort)

A port that can be used as an endpoint for distributed object connections (or raw messaging).

[`NSMessagePortNameServer`](/documentation/Foundation/NSMessagePortNameServer)

A server takes and returns message ports.

[`NSPortCoder`](/documentation/Foundation/NSPortCoder)

A coder used to transmit object proxies (and sometimes objects themselves) between connections.

[`PortDelegate`](/documentation/Foundation/PortDelegate)

An interface for handling incoming messages.

[`PortMessage`](/documentation/Foundation/PortMessage)

A low-level, operating system-independent type for inter-application (and inter-thread) messages.

[`NSPortNameServer`](/documentation/Foundation/NSPortNameServer)

An object-oriented interface to the port registration service used by the distributed objects system.

[`NSProtocolChecker`](/documentation/Foundation/NSProtocolChecker)

An object that restricts the messages that can be sent to another object (referred to as the checker’s delegate).

[`NSSocketPortNameServer`](/documentation/Foundation/NSSocketPortNameServer)

A port name server that takes and returns socket ports.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)