Several of Cocoa's classes provide support for interapplication and interthread communication. The Foundation class NSPipe provides an interface to Unix pipes, a long-time staple of Unix interprocess communication (IPC). The Foundation framework also implements a distributed notification system whereby notifications (discussed in Chapter 2) are sent between applications. The NSDistributedNotificationCenter class registers observers with the distributed notification system.
Finally, Cocoa provides a means for high-level IPC, known as distributed objects, that permits object sharing across process boundaries, even on different computers. Figure 7-1 shows the classes involved in interprocess communication.