我们的OSX应用正在使用
将多个文件上传到服务器for (int i = 0; i < samling2.length; i++) {
int totalValue = samling[i];
if (i < samling.length) {
totalValue += samling2[i];
}
arr[i] = totalValue;
}
上传时,上传卡住了。某些文件成功上传成功,有时更多文件却更少。
看一下调试导航器,我可以看到我的流线程显示了两次对func uploadTask(withStreamedRequest request: URLRequest) -> URLSessionUploadTask
委托的调用(一个接一个;第11帧和第5帧),这使我指向我称之为write的代码行: stream:handleEvent
上的maxLength,在第0帧中的NSOutputStrem
之后。
此时,应用程序处于阻塞状态,无法完成网络调用。
答案 0 :(得分:1)
似乎两次向您的处理程序发出信号以写入同一流。添加检查streamStatus是否为NSStreamStatusWriting并提前返回。