敲鼓的方法上加synchronize,保证同时只有一个人敲鼓,各线程都需要一个适合条件,例如定义一个flag,线程1, for (true){if(flag==a) 敲鼓 else sleep(xxx);} 线程1, for (true){if(flag==b) 敲鼓 else sleep(xxx);}
这个需要锁,当a敲完时,加一把锁,然后只能b解开,然后b敲完,加一把锁,只能a解开,这样他们就会这样执行下去,其实这个原理在socket中有用到,你可以看看