看板 MacDev 關於我們 聯絡資訊
請問一下在ios7新推出的功能MultipeerConnectivity中 在呼叫DidReceiveDataFromPeer這個方法時是在main thread中執行 還是另外呼叫一條thread處理呢? 如果是用main thread的話會不會發生處理第一條訊息時突然接受到第二條訊息 而導致第一條訊息處理被中斷這樣的問題產生? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.168.216.127
darktt:可以用[NSThread isMainThread]來確認現在是否在 01/05 08:59
darktt:main thread中 01/05 09:00
感謝樓上 的確不在main thread中執行,另外想請問一下假如UIView animation不在 main thread中被呼叫的話是不是會被block?因為我的 UIView animation在 didReceiveDataFromPeer中被呼叫, 但是直到約7秒後才被執行(其他剩下動作都被 執行完畢了)。之後我用dispatch_async(dispatch_get_main_queue(),^(){..code..}) 才讓動畫能夠在DidReceiveDataFromPeer被呼叫後及時呈現 ※ 編輯: a126040023 來自: 140.114.236.81 (01/07 00:00)
uranusjr:UI 更新必須在 main thread, 否則應該是未定義行為 01/07 10:43