xcode - iOS: 如何使用 swift 來新增一條死循環,有時間間隔的線程?
巴扎黑
巴扎黑 2017-05-31 10:32:00
0
1
770

簡單實現到這種程度即可:
定義一個bool 類型變數,每次循環時會判斷這個變數,為true 即會列印print(666),並使執行緒休眠1s,然後重複這個循環.

嘗試過GCD的.concurrentPerform,但是只能執行一定數量,並不是真死循環,而且不知道怎麼設定時間間隔.
網上還有NStimer 方法,但是不知道少導入了哪個框架,並沒有NSTimer 這個類別(Swift項目).


嘗試了 Cadisplaylink,問題已經解決了,但是在作為全域量初始化的時候,

let displaylink = CADisplayLink(target: self,
   selector: #selector(step))

會報錯,這是為什麼?

巴扎黑
巴扎黑

全部回覆(1)
过去多啦不再A梦

在評論中確認了題主是 target: self 這裡報錯了。

以下是題主之後的疑問:

哦對,當時controller 還沒初始化了,謝謝你.還有能再問一下這個target:變量有什麼用嗎?只知道一般的target 都填self,但不知道填self 是為了啥,是設置代理的嗎?

簡單理解就是後面參數 selector 的所屬。
一般時候,selector 都是指向某個類別內的某個方法,當let displaylink = CADisplayLink(target: self, selector: #selector(step)) 是寫在相同類別中時,自然targetget 就是self 了。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板