这段代码中两个线程为什么不交替执行package comxsddemo1;import javautilconcurrentlocksLock;import javautilconcurrentlocksReentrantLock; author :谢少迪 description: date :Created in 2023-04-07 2113 public class test02
这段代码中的两个线程不交替执行是因为使用了锁(ReentrantLock)来保证线程安全,当一个线程获取到锁之后,另一个线程必须等待该线程释放锁之后才能获取锁执行。因此,当一个线程获取到锁并开始执行drink()方法时,另一个线程必须等待该线程执行完之后才能获取锁执行drink()方法。这就导致了两个线程无法交替执行。
原文地址: https://www.cveoy.top/t/topic/bK0x 著作权归作者所有。请勿转载和采集!