推 winnerme: 本日最好笑就頒給這篇了XDDDDDDDDDDDDDDDDDDDDDDDDDDDDD11/09 19:48
推 kech9111: 白痴 這些幕僚11/09 19:50
推 kioh: 這智商,我快笑死了11/09 19:56
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.34.167.9
※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1441856627.A.E12.html
※ 編輯: qnismine (1.34.167.9), 09/10/2015 11:44:19
推 tom19830924: 我只有看文字部分 你UI有再main thread上更新嗎 09/10 13:44
dispatch_get_main_queue();
我有這在這dispatch_async的block setimage 和 stop spinner 可是都沒動作..
※ 編輯: qnismine (1.34.167.9), 09/10/2015 14:08:51
→ darktt: 頻繁的呼叫NSNotificationCenter會有delay的問題,不怎麼 09/10 14:19
→ darktt: 建議這麼做,可以改用block或delegate來解決 09/10 14:19
→ darktt: 另外你的notification center怎麼是使用addObserver來當 09/10 14:21
→ darktt: post資訊用? 09/10 14:21
→ darktt: 我知道了,你的dispatch_async不該加在addObserver的時候 09/10 14:24
原來頻繁呼叫會有這個問題...我post資料是在別的類別下...解碼圖片後再post資料廣播
我在這裡寫的只有接收端而已...我之前是用nstimer來接 因為nstimer好像是獨立main
thread的...一直把image set到 imageview裡..只是久了偶爾會出現Bad Access,或delay
想說用別的方式來寫寫看 以前寫android的時候 是在一個message handler只要callback
回來就setimage到 imageview上 所以就用類似的nsnotificationcenter 做做看
不知道block怎麼寫一個callback 從別的類別能夠一直回傳資料到view controller上..
※ 編輯: qnismine (1.34.167.9), 09/10/2015 14:30:49
→ darktt: 而是在post notification center的時候 09/10 14:25
→ qnismine: !!!沒錯!! 的確是把main_queue加在post的地方.. 09/10 14:35
→ qnismine: 不過的確會有效能的問題... 09/10 14:36
推 liddle: 別這樣用NSNotificationCenter,看一下你的memory 09/10 17:25
→ Esvent: 註冊NotificationCenter不一定要在main thread 09/11 00:28
→ Esvent: 倒是你的notification在哪個thread post 就會在哪個thread 09/11 00:29
→ Esvent: 被收到 所以重點是在post 09/11 00:30