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