很多同学都会在简历上写自己熟悉并发编程,那么就会衍生一道很经典的题:三个线程 A,B,C,按序来执行 N 次并且打印输出 A B C......;很明显,这就是一个多线程的编程题,挺有意思,借此,我想来写一篇文章来记录一下这个题的写法,更多的在于使用上而不是原理。 前言 在进行多线程编程之前:我们需要有一些多线程编程的共识,对于这类控制多线程执行的题目,我们需要有一个方法论: 线程操纵资源类 在写业务逻辑的时候遵循这么一个流程:判断 -- 执行 -- 通知 避免虚假唤醒,用 while 而不用 if 来进行判断。 上面说的三个点是基本的框架逻辑,任何控制多线程执行的题目都是遵循这个框架的,...