我正在嘗試在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