我正在尝试在iPhone应用程序中批量上传照片。我有一个循环浏览用户照片的脚本,然后为每张照片调用另一个脚本来执行上传。我可以故意阻止在循环中等待异步回调完成吗?
执行上传的脚本需要回叫触发每个用户照片的脚本以指示成功或失败。这有点奇怪,但它就像我需要能够在循环中获得同步调用的阻塞功能,但同时上传脚本是异步的。
的代码是非常投入,所以我会尝试使用伪代码:
脚本之一:
foreach (photoNeedsUpload in users photos)
upload the photo via Upload Script
callback hook: successOrFailureUploading (called back by the Upload Script)
上传脚本:
1. Do the upload and then wait for NSURLRequest callbacks:
connectionDidFinishLoading, didFailWithError, etc., etc.
2. Upon getting called back, in turn:
call back Script One appropriately with success/failure signal
我的问题是,我想要异步回调,以便检查上传状态,但我真的需要阻止为每张照片,并等待它上传。
有没有简单的方法来做这样的事情?我应该让线程进入睡眠状态,还是应该让http呼叫同步?如果是这样,如何检查成功?
我承认我没有做我的设计作业,并开始觉得自己已经为自己创建了一个循环问题!
与您的第一个建议,这对我来说工作正常,只是调用:[NSURLConnection sendSynchronousRequest:req returningResponse:&响应错误:&错误]; 感谢查理的想法! – Rob 2009-02-25 17:06:21