2010-10-15 80 views
1

未使用後臺線程調用連接委託方法,爲什麼?未使用後臺線程調用連接委託方法,爲什麼? (iPhone SDK)

在程序中,我創建了後臺線程和該線程集連接委託,通過設置ObjNSURLConnection.delegate = AnotherClass,並且AnotherClass包含NSURLConnection委託方法。

但是,當我調試代碼我發現NSURLConnection委託方法不會調用。 任何理由,爲什麼他們不被稱爲?如何解決這個問題?

+0

我已經使用NSInvocationOperation和NSOperationQueue創建了線程。 – Matrix 2010-10-15 13:37:17

+0

這將很難診斷這樣的問題。你能更具體還是張貼一些代碼? – Jordan 2010-10-15 14:49:14

回答

2

NSURLConnection安排通知調用它的runloop上的事件。您可能會忽略爲後臺線程運行runloop。

1

您需要在啓動連接後明確運行runloop。嘗試添加這一行代碼

[[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];

相關問題