Semaphore 有什么作用【java面试题详解】

今天爱分享给大家带来Semaphore 有什么作用【java面试题详解】,希望能够帮助到大家。
Semaphore 就是一个信号量,它的作用是限制某段代码块的并发数。Semaphore有一个构造函数,可以传入一个 int 型整数 n,表示某段代码最多只有 n 个线程可以访问,如果超出了 n,那么请等待,等到某个线程执行完毕这段代码块,下一个线程再进入。由此可以看出如果 Semaphore 构造函数中传入的 int 型整数 n=1,相当于变成了一个 synchronized 了。
  Semaphore(信号量)-允许多个线程同时访问: synchronized 和 ReentrantLock 都是一次只允许一个线程访问某个资源,Semaphore(信号量)可以指定多个线程同时访问某个资源。

人已赞赏
Java

什么是线程间交换数据的工具Exchanger【java面试题详解】

2020-11-21 12:42:27

Java

在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别?【面试题详解】

2020-11-21 12:43:56

'); })();