是否可以通过CFStream读取/写入设备



我希望利用Mac OS X上的CFStream,能够异步读取/写入作为串行通信设备的文件描述符。我需要访问文件描述符,以便通过ioctl控制和更改设备设置。

虽然在使用面向套接字的流操作时,似乎可以访问本机套接字fd,但我还没有看到任何方法可以使用CFCreateXxxStreamWithFile API打开文件,然后获取文件描述符(即使这样,我也确实需要来自同一个fd的一对,这样我就可以设置读/写选项)或从现有文件描述符创建CFStream。

有没有办法,或者有没有图书馆允许这样做(类似于AyncCococaSocket)?还是我只能做我自己的线程操作和/或GCD(这会将我自己限制在10.6及以上)?

谢谢你的帮助!

您可以使用kCFStreamPropertySocketNativeHandle通过属性getter CFReadStreamCopyPropertyCFWriteStreamCopyProperty访问CFStream的文件描述符。对于读写流对,得到的描述符应该是相同的。

相关内容

  • 没有找到相关文章

最新更新