1
我需要上傳一些遺留的數據到服務器application:didFinishLaunchingWithOptions
,但它需要一些時間,最終的應用程序可能會被殺死,因爲它無法按時完成發射,所以我用:僅在應用程序之後執行選擇器:didFinishLaunchingWithOptions?
[myObject performSelector:withObject:afterDelay:]
與0.2F延遲,讓application:didFinishLaunchingWithOptions
完成,但它看起來並不像一個好主意,所以我不知道有沒有我可以只application:didFinishLaunchingWithOptions
後進行選擇的方法嗎?
我知道有applicationDidBecomeActive
,但我需要它在application:didFinishLaunchingWithOptions
執行。
你的意思是,如果延遲爲0,那麼它將appDidFinishLaunching後執行? – hzxu
@hzxu有效,是的,他的確如此。它可能不是第二件事(例如,如果你連續兩次調用延遲0來調用,那麼兩者都不能成爲下一個),但是不會有人爲的停頓。然而他關於網絡訪問的主要觀點仍然存在。特別注意'NSURLConnection + sendAsynchronousRequest:queue:completionHandler:' - 它和發送同步一樣簡單,但沒有阻塞。真的沒有理由不使用它。 – Tommy
@Tommy是的,我知道,網絡是異步的,但我也需要在該方法中執行一些核心數據,它必須位於主線程中。 – hzxu