Iphone 两个NSURLConnections之间的流,阻止NSInputStream读取阻止所有连接?
我试图在两个iOS NSURLConencions(一个下载,另一个上传)之间传输数据,但似乎无法使其工作Iphone 两个NSURLConnections之间的流,阻止NSInputStream读取阻止所有连接?,iphone,ios,networking,nsurlconnection,nsinputstream,Iphone,Ios,Networking,Nsurlconnection,Nsinputstream,我试图在两个iOS NSURLConencions(一个下载,另一个上传)之间传输数据,但似乎无法使其工作 我有两个连接同时运行 一种是使用GET请求从url下载内容 另一个是将刚刚收到的相同内容上传到PUT请求的请求体中的另一个url 在上载连接中,我使用setHTTPBodyStream指定一个自定义NSInputStream,其读取方法返回以前从另一个连接接收到的数据 这两个NSURLConnection都安排在单独后台线程的运行循环中,因此任何(可能是阻塞的)委托回调都不会相互干扰(也
- 我有两个连接同时运行李>
- 一种是使用GET请求从url下载内容李>
- 另一个是将刚刚收到的相同内容上传到PUT请求的请求体中的另一个url李>
- 在上载连接中,我使用setHTTPBodyStream指定一个自定义NSInputStream,其读取方法返回以前从另一个连接接收到的数据李>
- 这两个NSURLConnection都安排在单独后台线程的运行循环中,因此任何(可能是阻塞的)委托回调都不会相互干扰(也不会与主线程干扰)李>
- 上载连接在输入流上调用[read:maxLength](我已经覆盖了它)李>
- 因为还没有可用的数据,所以读取调用被阻塞李>
- 在另一个线程上,对下载连接的委托调用[connection:didReceiveData:]李>
- 它将接收到的数据放入共享缓冲区,从而使其可用于上传连接的输入流李>
- 上传流的读取调用现在不再被阻止,它可以返回一块数据李>