2012-06-13 32 views
2

我有我想用於上傳圖像到服務器的Web服務,由wsdl2objc生成的Web服務代理類它使用NSOperation來執行SOAP調用。假設在上傳過程中,我按主頁按鈕,應用程序進入後臺模式,那麼會發生什麼情況?上傳過程會終止嗎?或過程將完成。上傳圖像在後臺模式

回答

5

默認情況下,操作系統將在後臺凍結您的應用程序。發生這種情況時,遠程服務器可能會在一段時間後關閉連接,因爲您的應用程序不響應。

您可以通過將上傳代碼包裝在後臺任務中(使用方法beginBackgroundTaskWithExpirationHandler:endBackgroundTask:)來避免這種情況,在這種情況下,操作系統會讓您的應用在後臺運行10分鐘以完成工作。

+0

是否有可能有多個後臺任務? – taffarel

+0

是的,你可以儘可能多地喜歡。 'beginBackgroundTaskWithExpirationHandler:'返回一個你必須存儲的標識符,然後傳遞給'endBackgroundTask:'來配對這兩個調用。但是無論你有多少背景任務,操作系統都不會給你10分鐘以上的時間。 –

+0

謝謝,它幫助我 – taffarel