|
8837| 1
|
[教程] 一种简单定时运行程序的方法 |
|
本帖最后由 TRIM 于 2026-2-2 21:40 编辑 【补】【2026/02/02】 今天突然发现帖子被一用户收录了,忘记自己竟然写过这样的帖子,那时还是初中吧 之前些程序一直是阻塞式的,于是自己摸索出了这种方法,但现在回头看,这种方法似乎是早就经常被使用的那种 另外,似乎系统定时器更加好些: 在开发板上,系统通过时钟中断来触发定时器,需要的资源更少,在处理精度要求高时更加高效、稳定 当然,写些不重要的程序,用些这种方法,还是不错的,这帖就留着给新手看看吧 ---------------------------------------------------------------------------------- 在编写程序时,我们在循环中一般需要隔一段时间运行一次代码,类似这种 ![]() 但是,在使用过程中发现了许多缺点 1.在运行程序时,需要一定的时间(尤其是需要有等待的),重复循环的时间其实大于5秒 2.在这个循环中,若想运行另一段需要一直重复执行(不需要延时)的代码,十分不方便 于是,探索出一种精确的定时重复执行的方法,如下: ![]() 可以看到,在循环中,用start_time变量保存程序每一次开始运行的时间,等到实际运行时间与start_time的差大于等于5秒,再运行一次,如此反复 这样,可以更精确地运行,并且可以同时运行其他定时或不定时的程序,打破定时器和多线程数量有限的局面 【文章有些句子似乎有点难断句(作者语文不好),用加粗来分隔词语】 |
沪公网安备31011502402448© 2013-2026 Comsenz Inc. Powered by Discuz! X3.4 Licensed