Lop*_*per 8 java iphone objective-c ios
在Java中,线程安全PipedInputStream和PipedOutputStream类可用于将数据从一个线程传输到另一个线程.在iOS中它的等价物是什么?
如果我错了,请纠正我,但我的理解是,NSPipeCocoa仅用于进程之间的数据传输,而不是线程之间的数据传输.另外,由于它为此使用了一些本地目录,我假设某些临时文件用于此类传输.总结一下,
与使用 fork 创建的 POSIX 线程不同,Java 线程是轻量级的并且共享相同的地址空间。Java 中不需要 C 风格的 IPC,并且 PipedInputStream/PipedOutputStream 绝对不是为此目的而创建的。Objective-C 线程基于 POSIX 构建,但它们都共享相同的虚拟内存空间,因此您通常也不会在 ObjC 中执行任何 IPC。
如果您希望在 Objective C 中的线程之间“共享”数据,只需将其写入适当的变量,并在必要时在线程之间发送一个信号,表明数据可供使用。做到这一点的最佳方法是使用条件。
如果您打算在 Obj C 中执行任何重要的线程工作,那么我强烈建议您阅读Apple 的线程安全指南。
| 归档时间: |
|
| 查看次数: |
1878 次 |
| 最近记录: |