嵌入式技术william hill官网
直播中

kasdlak

8年用户 1237经验值
擅长:光电显示
私信 关注
[问答]

RT-Thread建立的两个线程怎么循环实现打印呢

rt-thread建立两个线程,一个线程开灯,一个线程灭灯,怎么循环打印呢

回帖(1)

王璐

2022-8-9 10:16:04
1、wait方式是让当前持有锁的线程进入等待队列(不是阻塞队列),调用了wait方法后,当前线程就不会执行wait之后的代码逻辑了,所以notify方法必须在wait方法之前。
2、需要在循环结束后,加上notify,因为当其中一个线程正常执行完后,另一个线程一定还处于等待队列,所以最后需要被唤醒,如果不写,则虽然能正常打印出结果,但是程序不会结束。
3、要保证两个线程的开始顺序,因为thread.start方法,并不是先调用就一定是先调用的线程先执行,所以可以用countdownlatch来保证打印顺序的开始。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分