一个新的轻量级操作系统——RT-Thread(后面简称为rtt),这是一个国产的操作系统,这个操作系统的特点就是只有线程,没有进程,那么我们要使用这个系统的话只需要操作相应的线程就可以了,那么我们用好这个系统的方法就很简单了,我们只需要实现各个线程间的协调工作就可以了。
给main添加前缀 $Sub $ $,是作为一个新功能函数,可以将原有函数劫持下来,并在之后的程序运行中加上 $Super $ $前缀来重新调用原始函数。
main线程就是一个特殊的线程,所以他肯定也符合rtt系统管理线程的机制。 那我们这个问题就很好说明了。当main线程的while(1)循环内程序没有发生资源不可用或者线程主动延时的操作时,该线程一直会处于运行/就绪阶段,又因为我的程序中,main线程优先级最高,所以我的main线程一直霸占着系统资源,造成了系统宕机的假象。但是如果我在main线程的while(1)循环中插入一段延时程序,main线程就会进入挂起状态,让出系统资源,从而使其他线程有机会得到调度,使得该系统能稳定运行。