2009-12-10 70 views
1

任何人都可以指出一個解釋線程?在我的應用程序中,我將一些數據(甚至是大尺寸圖像)上傳到servelet。像往常一樣,上傳過程可能需要相當長的時間,具體取決於帶寬。所以我需要在其中實現線程,以便上傳過程在後臺進行。這裏的任何專家都可以發佈一個示例或教程鏈接或類似的東西。 在此先感謝。HTTP請求使用線程從iphone

回答

2

啓動後臺任務的一種非常簡單和可靠的方式是使用NSOperationNSOperationQueue。它允許您創建一個類(從NSOperation繼承),該類表示可放置在後臺處理的線程隊列中的任務。

NSOperationQueue documentation

在後臺啓動東西的另一個簡單的方法是使用performSelectorInBackground方法:

- (void) launchTask { 
    [self performSelectorInBackground:@selector(backgroundTask) withObject:nil]; 
} 

- (void) backgroundTask { 
    // stuff to do in background 
} 
+0

這太神奇了! – Nithin

+0

但是當我實現這個時,一個問題正在發生;如果我給laucnh這個任務,它第一次工作正常,但如果我嘗試再次調用它時,第一個運行,較新的執行,另一個只是丟失。我所知道的是將它們排隊,但不知道要執行它。 – Nithin

1

如果你想看到實際的實現這一點,看看在源代碼爲ASIHTTPRequest

+0

對於他的應用程序,這聽起來像他應該使用該包裝,而不是擔心自己的基礎線程。 –