我有一个需要使用32位渲染库的64位可可项目,但我无法移植到64位。
我决定将其分离为一个渲染服务,该渲染服务将以32位编译并提供库的接口,而主项目则将以64位编译并访问该渲染服务。
我想知道什么是进行进程间通信的最佳方法。我正在寻找一种可以提供快速通信和简单API的解决方案。
如今,似乎推荐使用XPC(特别是NSXPCConnection)。但是,我不确定-是否为32位应用程序实现了?
此外,我需要传递大量数据(最大〜5MB),因此我担心XPC的性能和速度。在这种情况下是否可以/建议使用共享内存映射?可以与xpc一起使用吗?
最佳答案
对于32至64位API,Apple确实在其自己的应用程序(如Pages)中使用XPC服务将旧数据迁移到更新的API。
尽管我尚未使用NSXPCConnection
使它起作用,但是Apple自己的应用程序使用了xpc/xpc.h
中的功能。