时钟组件我们在 011:【认识时钟组件】 已经讲过,而时钟本身也属于多线程,因为时钟在执行功能的时候是单独进行的,不与其他的子程序存在先后等待关系,本节主要讲解一下时钟的一种特殊用法,使得其与启动线程()的作用几乎一致
理论,时钟和启动线程()均为多线程操作。但是区别在于,时钟是一个定时器,会每过一个周期就执行一次,但是启动线程()只会加载一次子程序,也就是说我们只需要让时钟执行一次就可以了,写法如下
这种写法不是很规范,但是在很多时候效果还是很明显的
难点:
时钟是对某段代码周期性执行,启动线程启动的子程序里面有死循环,死循环的本质也是对某段代码重复运行,2者有何区别?
区别在于,在子程序内部对于时钟而言依旧是并列执行的,也就是时钟周期一到,时钟周期就会被调用一次,但是死循环内部是存在等待关系的,需要等这段代码执行完毕才可以进行下一次循环
注:
在实际使用中,一般情况建议使用启动线程(),死循环内部添加延时(),因为时钟周期是并列执行的,可能出现内存过高导致的程序卡死情况
(点击返回课程目录:https://shuxiangyage.net/forum.php?mod=viewthread&tid=1134)
|