https://jordanzhang.xyz/2018/11/16/Semaphore%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/
在java 多线程编程中常常需要处理同步问题,处理同步问题时常用的关键字就是synchronized,synchronized的含义就是同步的、互斥的锁,表示同一时刻只能有一个线程能获取执行代码的锁,但是实际情况和应用场景往往是需要多个线程获取锁,并发执行代码,这个时候使用synchronized就不合适了。而java并发工具类中的Semaphore类,就是专门用来处理这种情况的。
https://jordanzhang.xyz/2018/11/16/Semaphore%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/
在java 多线程编程中常常需要处理同步问题,处理同步问题时常用的关键字就是synchronized,synchronized的含义就是同步的、互斥的锁,表示同一时刻只能有一个线程能获取执行代码的锁,但是实际情况和应用场景往往是需要多个线程获取锁,并发执行代码,这个时候使用synchronized就不合适了。而java并发工具类中的Semaphore类,就是专门用来处理这种情况的。