我有一个消费者类,它以NSInputStream作为参数进行异步处理,我希望推送来自生产者类的数据,该类需要提供NSOutputStream作为其输出源。现在,我该如何设置一个缓冲(或透明)流,使其同时作为生产者的输出流和我的消费者类的NSInputStream?
我尝试过使用NSOutputStream中的+outputStreamToMemory和+outputStreamToBuffer:capacity:方法,但并没有弄清楚如何将其用作NSInputSource的输入。
我考虑设置一个中间人类来保存实际的缓冲区,然后创建两个子类(一个用于每个NSInput/OutputStream),这些子类持有对该缓冲类的引用,并让这些子类将大多数调用委托给该类,例如输出子类方法hasSpaceAvailable、write:maxLength:,以及输入方面的hasBytesAvailable、read:maxLength:等等。
欢迎就如何处理此情况给出任何提示。谢谢。
我尝试过使用NSOutputStream中的+outputStreamToMemory和+outputStreamToBuffer:capacity:方法,但并没有弄清楚如何将其用作NSInputSource的输入。
我考虑设置一个中间人类来保存实际的缓冲区,然后创建两个子类(一个用于每个NSInput/OutputStream),这些子类持有对该缓冲类的引用,并让这些子类将大多数调用委托给该类,例如输出子类方法hasSpaceAvailable、write:maxLength:,以及输入方面的hasBytesAvailable、read:maxLength:等等。
欢迎就如何处理此情况给出任何提示。谢谢。