IOS越狱开发之——进程通讯
2014-01-09 11:52
288 查看
Mac OS下的IPC方式种类很多,大约有下面几种。
1. Mach API
2. CFMessagePort
3. Distributed Objects (DO)
4. Apple events
5. UNIX domain sockets
6. Internet sockets
7. Memory Mapping
第一种太底层,很少有人用苹果也不推荐
第2,3,4种是苹果提供的较为高层的通讯机制
第5,6种大家应该都知道,用sockets方法离散度,移植性更好。5和6有一些区别,5使用unix文件系统作为通讯媒介,可以使用unix文件权限系统做通讯限制,它的另外一个名字就叫ipc sokets,6可以做机器间通讯做本地ipc也可以,不过要额外做一些努力。
第7种... 有把握用的人不多(我最近也在看这个)。
我想以上一些够你选择了
另外,我可以说一下我的选择
1. 假如你的进程间通讯不频繁,只是发送一些异步信号,DO是很好的选择,也就是楼上有人说得NSDistributedNotificationCenter
2. 如果你的进程间通讯频繁,但数据量不大,需要响应度高,domain sockets很好(DO也许也能满足,你自己测试测试)
3. 最后如果进程间通讯频繁,数据流巨大例如音频,图片等,需要real-time级别的, 选择Memory Mapping, 缺点是这个技术复杂需要自己做内存paging管理。
1. Mach API
2. CFMessagePort
3. Distributed Objects (DO)
4. Apple events
5. UNIX domain sockets
6. Internet sockets
7. Memory Mapping
第一种太底层,很少有人用苹果也不推荐
第2,3,4种是苹果提供的较为高层的通讯机制
第5,6种大家应该都知道,用sockets方法离散度,移植性更好。5和6有一些区别,5使用unix文件系统作为通讯媒介,可以使用unix文件权限系统做通讯限制,它的另外一个名字就叫ipc sokets,6可以做机器间通讯做本地ipc也可以,不过要额外做一些努力。
第7种... 有把握用的人不多(我最近也在看这个)。
我想以上一些够你选择了
另外,我可以说一下我的选择
1. 假如你的进程间通讯不频繁,只是发送一些异步信号,DO是很好的选择,也就是楼上有人说得NSDistributedNotificationCenter
2. 如果你的进程间通讯频繁,但数据量不大,需要响应度高,domain sockets很好(DO也许也能满足,你自己测试测试)
3. 最后如果进程间通讯频繁,数据流巨大例如音频,图片等,需要real-time级别的, 选择Memory Mapping, 缺点是这个技术复杂需要自己做内存paging管理。
相关文章推荐
- iOS越狱机子 进程间通讯
- iOS越狱开发之MobileSubstrate介绍
- android开发——跨进程通讯数据传递(三)
- IOS之怎样把自己开发的App安装到越狱的手机
- iOS蓝牙4.0开发(一)与外设通讯
- 使用 Xcode 在越狱 iOS 设备上进行开发调试
- iOS开发融云即时通讯集成详细步骤
- iOS开发多线程-线程间通讯
- linux_c开发(5-1)进程间通讯_进程间通讯概念
- iOS越狱开发(一) ipa 安装
- iOS 越狱开发那些事儿之六---Frida篇
- iOS企业开发In House ipa发布流程--自制网页安装设备无需授权和越狱
- IOS越狱开发简单流程
- iOS开发中,对进程和线程的理解
- iOS越狱开发
- iOS 如何将应用装入开发用的设备中测试 (未越狱)
- Android开发中实现跨进程通讯的AIDL接口
- Android IOS WebRTC 音视频开发总结(六二)-- 大数据解密国外实时通讯行业开发现状
- iOS越狱程序开发(3)- Your First Tweak
- 【即时通讯】iOS 基于GCDAsyncSocket快速开发Socket通信