通过多线程编程模拟进程的同步,互斥及信号量机制的经典问题。

编程解决下图(前趋图)问题,使得5个线程按该图要求运行,其中P1P5代表5个代码块,每个代码块分别由1个线程运行模拟,每个代码块执行时分别可以打印输出该代码块的名称(P1P5),每个代码块运行时需要睡眠(sleep())一定时间。

p1→p3→p4
p2→p3→p5