java多线程问题:多个线程访问同一资源时如何保证线程之间访问的顺序性。

2024-12-25 23:04:03
推荐回答(2个)
回答1:

敲鼓的方法上加synchronize,保证同时只有一个人敲鼓,

各线程都需要一个适合条件,例如定义一个flag,
线程1, for (true){if(flag==a) 敲鼓 else sleep(xxx);}
线程1, for (true){if(flag==b) 敲鼓 else sleep(xxx);}

回答2:

这个需要锁,当a敲完时,加一把锁,然后只能b解开,然后b敲完,加一把锁,只能a解开,这样他们就会这样执行下去,其实这个原理在socket中有用到,你可以看看