简单实现到这种程度即可:
定义一个bool 类型变量,每次循环时会判断这个变量,为 true 即会打印 print(666),并使线程休眠1s,然后重复这个循环.
尝试过 GCD的.concurrentPerform,但是只能执行一定数量,并不是真死循环,而且不知道怎么设置时间间隔.
网上还有 NStimer 方法,但是不知道少导入了哪个框架,并没有 NSTimer 这个类(Swift项目).
尝试了 Cadisplaylink,问题已经解决了,但是在作为全局量初始化的时候,
let displaylink = CADisplayLink(target: self,
selector: #selector(step))
会报错,这是为什么?
过去多啦不再A梦2017-05-31 10:34:00
在评论中确认了题主是 target: self
这里报错了。
以下是题主之后的疑问:
哦对,当时controller 还没初始化了,谢谢你.还有能再问一下这个 target:变量有什么用吗?只知道一般的 target 都填 self,但不知道填 self 是为了啥,是设置代理的吗?
简单理解就是后面参数 selector
的所属。
一般时候,selector
都是指向某个类内的某个方法,当 let displaylink = CADisplayLink(target: self, selector: #selector(step))
是写在相同类中时,自然 target
就是 self
了。