在Cocoa/iOS/MacOSX中实现哪种流式API?
iOS/MacOSX中有两个流函数和/或类。如果我想实现自己的自定义流,即提供或使用连续字节数据的某个对象,那么最好使用以下哪种API在Cocoa/iOS/MacOSX中实现哪种流式API?,ios,macos,cocoa,io,stream,Ios,Macos,Cocoa,Io,Stream,iOS/MacOSX中有两个流函数和/或类。如果我想实现自己的自定义流,即提供或使用连续字节数据的某个对象,那么最好使用以下哪种API Unix文件描述符(int) 无法实现自定义文件描述符 文件* 使用funopen实现自己的流 C级API,实际上并不是很多Cocoa都使用它。例如,无法将此连接到NSInputStream 数据可以由您自己的代码使用 CGDataProviderRef,CGDataConsumerRef 允许顺序和直接访问读取实现 用于CoreGraphics,但
- Unix文件描述符(int)
- 无法实现自定义文件描述符
- 文件*
- 使用funopen实现自己的流
- C级API,实际上并不是很多Cocoa都使用它。例如,无法将此连接到NSInputStream
- 数据可以由您自己的代码使用
- CGDataProviderRef,CGDataConsumerRef
- 允许顺序和直接访问读取实现
- 用于CoreGraphics,但不用于其他用途
- 不能从您自己的代码中使用数据
- NSInputStream,NSOutputStream
- 许多Cocoa使用,例如XML、JSON解析
- Doc允许子类化,但实际上,由于异步使用,子类化很棘手
- 数据可以从您自己的代码中使用